vxe-table 4.2.0-beta.1 → 4.2.0-beta.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 (102) hide show
  1. package/es/form/src/form-item.js +2 -2
  2. package/es/form/src/form.js +13 -28
  3. package/es/form/src/render.js +15 -10
  4. package/es/select/style.css +1 -1
  5. package/es/style.css +1 -1
  6. package/es/style.min.css +1 -1
  7. package/es/table/src/cell.js +3 -3
  8. package/es/table/src/column.js +3 -1
  9. package/es/table/src/columnInfo.js +1 -0
  10. package/es/table/src/emits.js +5 -1
  11. package/es/table/src/table.js +43 -56
  12. package/es/tooltip/src/tooltip.js +47 -28
  13. package/es/tooltip/style.css +1 -1
  14. package/es/v-x-e-table/src/conf.js +8 -6
  15. package/helper/vetur/attributes.json +31 -11
  16. package/helper/vetur/tags.json +8 -3
  17. package/lib/form/src/form-item.js +2 -2
  18. package/lib/form/src/form-item.min.js +1 -1
  19. package/lib/form/src/form.js +14 -34
  20. package/lib/form/src/form.min.js +1 -1
  21. package/lib/form/src/render.js +24 -10
  22. package/lib/form/src/render.min.js +1 -1
  23. package/lib/index.umd.js +150 -151
  24. package/lib/index.umd.min.js +1 -1
  25. package/lib/select/style/style.css +1 -1
  26. package/lib/select/style/style.min.css +1 -1
  27. package/lib/style.css +1 -1
  28. package/lib/style.min.css +1 -1
  29. package/lib/table/src/cell.js +3 -3
  30. package/lib/table/src/cell.min.js +1 -1
  31. package/lib/table/src/column.js +3 -1
  32. package/lib/table/src/column.min.js +1 -1
  33. package/lib/table/src/columnInfo.js +1 -0
  34. package/lib/table/src/columnInfo.min.js +1 -1
  35. package/lib/table/src/emits.js +1 -1
  36. package/lib/table/src/emits.min.js +1 -1
  37. package/lib/table/src/table.js +49 -60
  38. package/lib/table/src/table.min.js +1 -1
  39. package/lib/tooltip/src/tooltip.js +55 -32
  40. package/lib/tooltip/src/tooltip.min.js +1 -1
  41. package/lib/tooltip/style/style.css +1 -1
  42. package/lib/tooltip/style/style.min.css +1 -1
  43. package/lib/v-x-e-table/src/conf.js +8 -6
  44. package/lib/v-x-e-table/src/conf.min.js +1 -1
  45. package/package.json +1 -1
  46. package/packages/form/src/form-item.ts +2 -2
  47. package/packages/form/src/form.ts +14 -31
  48. package/packages/form/src/render.ts +8 -6
  49. package/packages/table/src/cell.ts +3 -3
  50. package/packages/table/src/column.ts +3 -1
  51. package/packages/table/src/columnInfo.ts +1 -0
  52. package/packages/table/src/emits.ts +5 -1
  53. package/packages/table/src/table.ts +46 -56
  54. package/packages/tooltip/src/tooltip.ts +48 -28
  55. package/packages/v-x-e-table/src/conf.ts +8 -6
  56. package/styles/select.scss +1 -1
  57. package/styles/tooltip.scss +1 -1
  58. package/types/all.d.ts +2 -2
  59. package/types/button.d.ts +54 -54
  60. package/types/checkbox-group.d.ts +21 -21
  61. package/types/checkbox.d.ts +30 -30
  62. package/types/colgroup.d.ts +16 -16
  63. package/types/column.d.ts +172 -161
  64. package/types/component.d.ts +9 -9
  65. package/types/edit.d.ts +35 -35
  66. package/types/export.d.ts +101 -101
  67. package/types/filter.d.ts +19 -19
  68. package/types/footer.d.ts +1 -1
  69. package/types/form-gather.d.ts +3 -3
  70. package/types/form-item.d.ts +68 -66
  71. package/types/form.d.ts +131 -132
  72. package/types/grid.d.ts +257 -257
  73. package/types/header.d.ts +1 -1
  74. package/types/icon.d.ts +1 -1
  75. package/types/input.d.ts +162 -162
  76. package/types/keyboard.d.ts +6 -6
  77. package/types/list.d.ts +54 -54
  78. package/types/menu.d.ts +33 -33
  79. package/types/modal.d.ts +160 -160
  80. package/types/optgroup.d.ts +5 -5
  81. package/types/option.d.ts +19 -19
  82. package/types/pager.d.ts +62 -62
  83. package/types/plugins/pro.d.ts +245 -215
  84. package/types/pulldown.d.ts +36 -36
  85. package/types/radio-button.d.ts +25 -25
  86. package/types/radio-group.d.ts +20 -20
  87. package/types/radio.d.ts +27 -27
  88. package/types/select.d.ts +82 -82
  89. package/types/switch.d.ts +40 -40
  90. package/types/table.d.ts +1380 -1336
  91. package/types/textarea.d.ts +71 -71
  92. package/types/toolbar.d.ts +65 -65
  93. package/types/tooltip.d.ts +50 -48
  94. package/types/v-x-e-table/commands.d.ts +12 -12
  95. package/types/v-x-e-table/formats.d.ts +10 -10
  96. package/types/v-x-e-table/hooks.d.ts +9 -9
  97. package/types/v-x-e-table/index.d.ts +44 -44
  98. package/types/v-x-e-table/interceptor.d.ts +26 -26
  99. package/types/v-x-e-table/menus.d.ts +13 -13
  100. package/types/v-x-e-table/renderer.d.ts +128 -128
  101. package/types/v-x-e-table/setup.d.ts +55 -55
  102. package/types/validator.d.ts +28 -28
@@ -115,9 +115,9 @@ export default defineComponent({
115
115
  }
116
116
  var ons = showTooltip ? {
117
117
  onMouseenter: function (evnt) {
118
- $xeform.triggerHeaderHelpEvent(evnt, params);
118
+ $xeform.triggerTitleTipEvent(evnt, params);
119
119
  },
120
- onMouseleave: $xeform.handleTargetLeaveEvent
120
+ onMouseleave: $xeform.handleTitleTipLeaveEvent
121
121
  } : {};
122
122
  return h('div', {
123
123
  ref: refElem,
@@ -119,7 +119,6 @@ export default defineComponent({
119
119
  });
120
120
  var internalData = reactive({
121
121
  tooltipTimeout: null,
122
- tooltipActive: false,
123
122
  tooltipStore: {
124
123
  item: null,
125
124
  visible: false
@@ -131,22 +130,8 @@ export default defineComponent({
131
130
  var computeValidOpts = computed(function () {
132
131
  return Object.assign({}, GlobalConfig.form.validConfig, props.validConfig);
133
132
  });
134
- var computeTooltipOpts = ref();
135
- var handleTooltipLeaveMethod = function () {
136
- var tooltipOpts = computeTooltipOpts.value;
137
- setTimeout(function () {
138
- if (!internalData.tooltipActive) {
139
- formMethods.closeTooltip();
140
- }
141
- }, tooltipOpts.leaveDelay);
142
- return false;
143
- };
144
- computeTooltipOpts = computed(function () {
145
- var opts = Object.assign({ leaveDelay: 300 }, GlobalConfig.form.tooltipConfig, props.tooltipConfig);
146
- if (opts.enterable) {
147
- opts.leaveMethod = handleTooltipLeaveMethod;
148
- }
149
- return opts;
133
+ var computeTooltipOpts = computed(function () {
134
+ return Object.assign({}, GlobalConfig.tooltip, GlobalConfig.form.tooltipConfig, props.tooltipConfig);
150
135
  });
151
136
  var refMaps = {
152
137
  refElem: refElem
@@ -443,7 +428,7 @@ export default defineComponent({
443
428
  }
444
429
  return nextTick();
445
430
  };
446
- var triggerHeaderHelpEvent = function (evnt, params) {
431
+ var triggerTitleTipEvent = function (evnt, params) {
447
432
  var item = params.item;
448
433
  var tooltipStore = internalData.tooltipStore;
449
434
  var $tooltip = refTooltip.value;
@@ -451,8 +436,9 @@ export default defineComponent({
451
436
  var content = (overflowElem.textContent || '').trim();
452
437
  var isCellOverflow = overflowElem.scrollWidth > overflowElem.clientWidth;
453
438
  clearTimeout(internalData.tooltipTimeout);
454
- internalData.tooltipActive = true;
455
- closeTooltip();
439
+ if (tooltipStore.item !== item) {
440
+ closeTooltip();
441
+ }
456
442
  if (content && isCellOverflow) {
457
443
  Object.assign(tooltipStore, {
458
444
  item: item,
@@ -463,10 +449,9 @@ export default defineComponent({
463
449
  }
464
450
  }
465
451
  };
466
- var handleTargetLeaveEvent = function () {
452
+ var handleTitleTipLeaveEvent = function () {
467
453
  var tooltipOpts = computeTooltipOpts.value;
468
454
  var $tooltip = refTooltip.value;
469
- internalData.tooltipActive = false;
470
455
  if ($tooltip) {
471
456
  $tooltip.setActived(false);
472
457
  }
@@ -508,7 +493,7 @@ export default defineComponent({
508
493
  var data = props.data, rules = props.rules, allTitleOverflow = props.titleOverflow;
509
494
  var collapseAll = reactData.collapseAll;
510
495
  var validOpts = computeValidOpts.value;
511
- return itemList.map(function (item, index) {
496
+ return itemList.map(function (item) {
512
497
  var slots = item.slots, title = item.title, visible = item.visible, folding = item.folding, visibleMethod = item.visibleMethod, field = item.field, collapseNode = item.collapseNode, itemRender = item.itemRender, showError = item.showError, errRule = item.errRule, className = item.className, titleOverflow = item.titleOverflow, children = item.children;
513
498
  var compConf = isEnableConf(itemRender) ? VXETable.renderer.get(itemRender.name) : null;
514
499
  var defaultSlot = slots ? slots.default : null;
@@ -578,9 +563,9 @@ export default defineComponent({
578
563
  }
579
564
  var ons = showTooltip ? {
580
565
  onMouseenter: function (evnt) {
581
- triggerHeaderHelpEvent(evnt, params);
566
+ triggerTitleTipEvent(evnt, params);
582
567
  },
583
- onMouseleave: handleTargetLeaveEvent
568
+ onMouseleave: handleTitleTipLeaveEvent
584
569
  } : {};
585
570
  return h('div', {
586
571
  class: ['vxe-form--item', item.id, span ? "vxe-col--" + span + " is--span" : '', className ? (XEUtils.isFunction(className) ? className(params) : className) : '', {
@@ -590,7 +575,7 @@ export default defineComponent({
590
575
  'is--active': !itemVisibleMethod || itemVisibleMethod(params),
591
576
  'is--error': showError
592
577
  }],
593
- key: index
578
+ key: item.id
594
579
  }, [
595
580
  h('div', {
596
581
  class: 'vxe-form--item-inner'
@@ -624,8 +609,8 @@ export default defineComponent({
624
609
  var formPrivateMethods = {
625
610
  callSlot: callSlot,
626
611
  toggleCollapseEvent: toggleCollapseEvent,
627
- triggerHeaderHelpEvent: triggerHeaderHelpEvent,
628
- handleTargetLeaveEvent: handleTargetLeaveEvent
612
+ triggerTitleTipEvent: triggerTitleTipEvent,
613
+ handleTitleTipLeaveEvent: handleTitleTipLeaveEvent
629
614
  };
630
615
  Object.assign($xeform, formMethods, formPrivateMethods);
631
616
  watch(function () { return reactData.staticItems; }, function (value) {
@@ -1,3 +1,14 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
1
12
  import { h, resolveComponent } from 'vue';
2
13
  import GlobalConfig from '../../v-x-e-table/src/conf';
3
14
  import { VXETable } from '../../v-x-e-table';
@@ -22,7 +33,9 @@ function renderSuffixIcon(titleSuffix) {
22
33
  }
23
34
  export function renderTitle($xeform, item) {
24
35
  var data = $xeform.props.data;
36
+ var computeTooltipOpts = $xeform.getComputeMaps().computeTooltipOpts;
25
37
  var slots = item.slots, field = item.field, itemRender = item.itemRender, titlePrefix = item.titlePrefix, titleSuffix = item.titleSuffix;
38
+ var tooltipOpts = computeTooltipOpts.value;
26
39
  var compConf = isEnableConf(itemRender) ? VXETable.renderer.get(itemRender.name) : null;
27
40
  var params = { data: data, property: field, item: item, $form: $xeform };
28
41
  var titleSlot = slots ? slots.title : null;
@@ -30,11 +43,7 @@ export function renderTitle($xeform, item) {
30
43
  var titVNs = [];
31
44
  if (titlePrefix) {
32
45
  titVNs.push((titlePrefix.content || titlePrefix.message)
33
- ? h(resolveComponent('vxe-tooltip'), {
34
- content: getFuncText(titlePrefix.content || titlePrefix.message),
35
- enterable: titlePrefix.enterable,
36
- theme: titlePrefix.theme
37
- }, {
46
+ ? h(resolveComponent('vxe-tooltip'), __assign(__assign(__assign({}, tooltipOpts), titlePrefix), { content: getFuncText(titlePrefix.content || titlePrefix.message) }), {
38
47
  default: function () { return renderPrefixIcon(titlePrefix); }
39
48
  })
40
49
  : renderPrefixIcon(titlePrefix));
@@ -48,11 +57,7 @@ export function renderTitle($xeform, item) {
48
57
  var fixVNs = [];
49
58
  if (titleSuffix) {
50
59
  fixVNs.push((titleSuffix.content || titleSuffix.message)
51
- ? h(resolveComponent('vxe-tooltip'), {
52
- content: getFuncText(titleSuffix.content || titleSuffix.message),
53
- enterable: titleSuffix.enterable,
54
- theme: titleSuffix.theme
55
- }, {
60
+ ? h(resolveComponent('vxe-tooltip'), __assign(__assign(__assign({}, tooltipOpts), titleSuffix), { content: getFuncText(titleSuffix.content || titleSuffix.message) }), {
56
61
  default: function () { return renderSuffixIcon(titleSuffix); }
57
62
  })
58
63
  : renderSuffixIcon(titleSuffix));
@@ -155,7 +155,7 @@
155
155
 
156
156
  .vxe-select-option {
157
157
  padding: 0 10px;
158
- max-width: 400px;
158
+ max-width: 600px;
159
159
  white-space: nowrap;
160
160
  overflow: hidden;
161
161
  text-overflow: ellipsis;