vxe-table 4.11.7 → 4.11.9

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 (133) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/locale/lang/ar-EG.js +2 -1
  4. package/es/locale/lang/de-DE.js +2 -1
  5. package/es/locale/lang/en-US.js +2 -1
  6. package/es/locale/lang/es-ES.js +2 -1
  7. package/es/locale/lang/fr-FR.js +2 -1
  8. package/es/locale/lang/hu-HU.js +2 -1
  9. package/es/locale/lang/hy-AM.js +2 -1
  10. package/es/locale/lang/id-ID.js +2 -1
  11. package/es/locale/lang/it-IT.js +2 -1
  12. package/es/locale/lang/ja-JP.js +2 -1
  13. package/es/locale/lang/ko-KR.js +2 -1
  14. package/es/locale/lang/nb-NO.js +2 -1
  15. package/es/locale/lang/pt-BR.js +2 -1
  16. package/es/locale/lang/ru-RU.js +2 -1
  17. package/es/locale/lang/th-TH.js +2 -1
  18. package/es/locale/lang/ug-CN.js +2 -1
  19. package/es/locale/lang/uk-UA.js +2 -1
  20. package/es/locale/lang/vi-VN.js +2 -1
  21. package/es/locale/lang/zh-CHT.js +2 -1
  22. package/es/locale/lang/zh-CN.js +2 -1
  23. package/es/style.css +1 -1
  24. package/es/style.min.css +1 -1
  25. package/es/table/module/export/hook.js +2 -2
  26. package/es/table/module/filter/hook.js +16 -18
  27. package/es/table/src/table.js +1 -1
  28. package/es/table/style.css +0 -17
  29. package/es/table/style.min.css +1 -1
  30. package/es/ui/index.js +1 -1
  31. package/es/ui/src/log.js +1 -1
  32. package/es/vxe-table/style.css +0 -17
  33. package/es/vxe-table/style.min.css +1 -1
  34. package/lib/index.css +1 -1
  35. package/lib/index.min.css +1 -1
  36. package/lib/index.umd.js +25 -25
  37. package/lib/index.umd.min.js +1 -1
  38. package/lib/locale/lang/ar-EG.js +2 -1
  39. package/lib/locale/lang/ar-EG.min.js +1 -1
  40. package/lib/locale/lang/de-DE.js +2 -1
  41. package/lib/locale/lang/de-DE.min.js +1 -1
  42. package/lib/locale/lang/en-US.js +2 -1
  43. package/lib/locale/lang/en-US.min.js +1 -1
  44. package/lib/locale/lang/en-US.umd.js +2 -1
  45. package/lib/locale/lang/es-ES.js +2 -1
  46. package/lib/locale/lang/es-ES.min.js +1 -1
  47. package/lib/locale/lang/es-ES.umd.js +2 -1
  48. package/lib/locale/lang/fr-FR.js +2 -1
  49. package/lib/locale/lang/fr-FR.min.js +1 -1
  50. package/lib/locale/lang/hu-HU.js +2 -1
  51. package/lib/locale/lang/hu-HU.min.js +1 -1
  52. package/lib/locale/lang/hu-HU.umd.js +2 -1
  53. package/lib/locale/lang/hy-AM.js +2 -1
  54. package/lib/locale/lang/hy-AM.min.js +1 -1
  55. package/lib/locale/lang/id-ID.js +2 -1
  56. package/lib/locale/lang/id-ID.min.js +1 -1
  57. package/lib/locale/lang/it-IT.js +2 -1
  58. package/lib/locale/lang/it-IT.min.js +1 -1
  59. package/lib/locale/lang/ja-JP.js +2 -1
  60. package/lib/locale/lang/ja-JP.min.js +1 -1
  61. package/lib/locale/lang/ja-JP.umd.js +2 -1
  62. package/lib/locale/lang/ko-KR.js +2 -1
  63. package/lib/locale/lang/ko-KR.min.js +1 -1
  64. package/lib/locale/lang/ko-KR.umd.js +2 -1
  65. package/lib/locale/lang/nb-NO.js +2 -1
  66. package/lib/locale/lang/nb-NO.min.js +1 -1
  67. package/lib/locale/lang/pt-BR.js +2 -1
  68. package/lib/locale/lang/pt-BR.min.js +1 -1
  69. package/lib/locale/lang/pt-BR.umd.js +2 -1
  70. package/lib/locale/lang/ru-RU.js +2 -1
  71. package/lib/locale/lang/ru-RU.min.js +1 -1
  72. package/lib/locale/lang/ru-RU.umd.js +2 -1
  73. package/lib/locale/lang/th-TH.js +2 -1
  74. package/lib/locale/lang/th-TH.min.js +1 -1
  75. package/lib/locale/lang/ug-CN.js +2 -1
  76. package/lib/locale/lang/ug-CN.min.js +1 -1
  77. package/lib/locale/lang/uk-UA.js +2 -1
  78. package/lib/locale/lang/uk-UA.min.js +1 -1
  79. package/lib/locale/lang/uk-UA.umd.js +2 -1
  80. package/lib/locale/lang/vi-VN.js +2 -1
  81. package/lib/locale/lang/vi-VN.min.js +1 -1
  82. package/lib/locale/lang/zh-CHT.js +2 -1
  83. package/lib/locale/lang/zh-CHT.min.js +1 -1
  84. package/lib/locale/lang/zh-CN.js +2 -1
  85. package/lib/locale/lang/zh-CN.min.js +1 -1
  86. package/lib/locale/lang/zh-CN.umd.js +2 -1
  87. package/lib/style.css +1 -1
  88. package/lib/style.min.css +1 -1
  89. package/lib/table/module/export/hook.js +2 -2
  90. package/lib/table/module/export/hook.min.js +1 -1
  91. package/lib/table/module/filter/hook.js +18 -19
  92. package/lib/table/module/filter/hook.min.js +1 -1
  93. package/lib/table/src/table.js +1 -1
  94. package/lib/table/src/table.min.js +1 -1
  95. package/lib/table/style/style.css +0 -17
  96. package/lib/table/style/style.min.css +1 -1
  97. package/lib/ui/index.js +1 -1
  98. package/lib/ui/index.min.js +1 -1
  99. package/lib/ui/src/log.js +1 -1
  100. package/lib/ui/src/log.min.js +1 -1
  101. package/lib/vxe-table/style/style.css +0 -17
  102. package/lib/vxe-table/style/style.min.css +1 -1
  103. package/package.json +2 -2
  104. package/packages/locale/lang/ar-EG.ts +2 -1
  105. package/packages/locale/lang/de-DE.ts +2 -1
  106. package/packages/locale/lang/en-US.ts +2 -1
  107. package/packages/locale/lang/es-ES.ts +2 -1
  108. package/packages/locale/lang/fr-FR.ts +2 -1
  109. package/packages/locale/lang/hu-HU.ts +2 -1
  110. package/packages/locale/lang/hy-AM.ts +2 -1
  111. package/packages/locale/lang/id-ID.ts +2 -1
  112. package/packages/locale/lang/it-IT.ts +2 -1
  113. package/packages/locale/lang/ja-JP.ts +2 -1
  114. package/packages/locale/lang/ko-KR.ts +2 -1
  115. package/packages/locale/lang/nb-NO.ts +2 -1
  116. package/packages/locale/lang/pt-BR.ts +2 -1
  117. package/packages/locale/lang/ru-RU.ts +2 -1
  118. package/packages/locale/lang/th-TH.ts +2 -1
  119. package/packages/locale/lang/ug-CN.ts +2 -1
  120. package/packages/locale/lang/uk-UA.ts +2 -1
  121. package/packages/locale/lang/vi-VN.ts +2 -1
  122. package/packages/locale/lang/zh-CHT.ts +2 -1
  123. package/packages/locale/lang/zh-CN.ts +2 -1
  124. package/packages/table/module/export/hook.ts +2 -2
  125. package/packages/table/module/filter/hook.ts +17 -19
  126. package/packages/table/src/table.ts +1 -1
  127. package/styles/components/table.scss +0 -19
  128. /package/es/{iconfont.1740104016678.ttf → iconfont.1740288784144.ttf} +0 -0
  129. /package/es/{iconfont.1740104016678.woff → iconfont.1740288784144.woff} +0 -0
  130. /package/es/{iconfont.1740104016678.woff2 → iconfont.1740288784144.woff2} +0 -0
  131. /package/lib/{iconfont.1740104016678.ttf → iconfont.1740288784144.ttf} +0 -0
  132. /package/lib/{iconfont.1740104016678.woff → iconfont.1740288784144.woff} +0 -0
  133. /package/lib/{iconfont.1740104016678.woff2 → iconfont.1740288784144.woff2} +0 -0
@@ -9,7 +9,7 @@ const tableFilterMethodKeys = ['openFilter', 'setFilter', 'clearFilter', 'saveFi
9
9
  hooks.add('tableFilterModule', {
10
10
  setupTable($xeTable) {
11
11
  const { props, reactData, internalData } = $xeTable;
12
- const { refTableHeader, refTableBody, refTableFilter } = $xeTable.getRefMaps();
12
+ const { refElem, refTableFilter } = $xeTable.getRefMaps();
13
13
  const { computeFilterOpts, computeMouseOpts } = $xeTable.getComputeMaps();
14
14
  // 确认筛选
15
15
  const handleFilterConfirmFilter = (evnt) => {
@@ -61,11 +61,15 @@ hooks.add('tableFilterModule', {
61
61
  */
62
62
  triggerFilterEvent(evnt, column, params) {
63
63
  const { initStore, filterStore } = reactData;
64
+ const { elemStore } = internalData;
64
65
  if (filterStore.column === column && filterStore.visible) {
65
66
  filterStore.visible = false;
66
67
  }
67
68
  else {
68
- const { target: targetElem, pageX } = evnt;
69
+ const { clientY, pageX } = evnt;
70
+ const el = refElem.value;
71
+ const tableRect = el.getBoundingClientRect();
72
+ const targetElem = evnt.target;
69
73
  const { visibleWidth } = getDomNode();
70
74
  const { filters, filterMultiple, filterRender } = column;
71
75
  const compConf = isEnableConf(filterRender) ? renderer.get(filterRender.name) : null;
@@ -91,11 +95,8 @@ hooks.add('tableFilterModule', {
91
95
  filterStore.visible = true;
92
96
  initStore.filter = true;
93
97
  nextTick(() => {
94
- const tableHeader = refTableHeader.value;
95
- const tableBody = refTableBody.value;
96
- const headerElem = tableHeader ? tableHeader.$el : null;
97
- const bodyElem = tableBody.$el;
98
- if (!bodyElem) {
98
+ const headerScrollElem = getRefElem(elemStore['main-header-scroll']);
99
+ if (!headerScrollElem) {
99
100
  return;
100
101
  }
101
102
  const tableFilter = refTableFilter.value;
@@ -104,30 +105,27 @@ hooks.add('tableFilterModule', {
104
105
  return;
105
106
  }
106
107
  const filterWidth = filterWrapperElem.offsetWidth;
107
- const filterHeight = filterWrapperElem.offsetHeight;
108
108
  const filterHeadElem = filterWrapperElem.querySelector('.vxe-table--filter-header');
109
109
  const filterFootElem = filterWrapperElem.querySelector('.vxe-table--filter-footer');
110
110
  const centerWidth = filterWidth / 2;
111
111
  const minMargin = 10;
112
- const maxLeft = bodyElem.clientWidth - filterWidth - minMargin;
112
+ const maxLeft = el.clientWidth - filterWidth - minMargin;
113
113
  let left, right;
114
+ const thEl = targetElem.offsetParent;
115
+ const trEl = thEl.offsetParent;
114
116
  const style = {
115
- top: `${targetElem.offsetTop + targetElem.offsetParent.offsetTop + targetElem.offsetHeight}px`
117
+ top: `${targetElem.offsetTop + thEl.offsetTop + targetElem.offsetHeight}px`
116
118
  };
117
119
  // 判断面板不能大于表格高度
118
- let maxHeight = null;
119
- const bodyHeight = bodyElem.clientHeight - (headerElem ? headerElem.clientHeight / 2 : 0);
120
- if (filterHeight >= bodyHeight) {
121
- maxHeight = Math.max(40, bodyHeight - (filterFootElem ? filterFootElem.offsetHeight : 0) - (filterHeadElem ? filterHeadElem.offsetHeight : 0));
122
- }
120
+ const maxHeight = Math.max(40, el.clientHeight - (clientY - tableRect.y) - (filterHeadElem ? filterHeadElem.clientHeight : 0) - (filterFootElem ? filterFootElem.clientHeight : 0) - 14);
123
121
  if (column.fixed === 'left') {
124
- left = targetElem.offsetLeft + targetElem.offsetParent.offsetLeft - centerWidth;
122
+ left = targetElem.offsetLeft + thEl.offsetLeft - centerWidth;
125
123
  }
126
124
  else if (column.fixed === 'right') {
127
- right = (targetElem.offsetParent.offsetWidth - targetElem.offsetLeft) + (targetElem.offsetParent.offsetParent.offsetWidth - targetElem.offsetParent.offsetLeft) - column.renderWidth - centerWidth;
125
+ right = (thEl.offsetWidth - targetElem.offsetLeft) + (trEl.offsetWidth - trEl.offsetLeft) - column.renderWidth - centerWidth;
128
126
  }
129
127
  else {
130
- left = targetElem.offsetLeft + targetElem.offsetParent.offsetLeft - centerWidth - bodyElem.scrollLeft;
128
+ left = targetElem.offsetLeft + thEl.offsetLeft - centerWidth - headerScrollElem.scrollLeft;
131
129
  }
132
130
  if (left) {
133
131
  const overflowWidth = (pageX + filterWidth - centerWidth + minMargin) - visibleWidth;
@@ -9159,7 +9159,7 @@ export default defineComponent({
9159
9159
  const el = refElem.value;
9160
9160
  tablePrivateMethods.clearHoverRow();
9161
9161
  if (el) {
9162
- XEUtils.arrayEach(el.querySelectorAll(`[rowid="${rowid}"]`), elem => addClass(elem, 'row--hover'));
9162
+ XEUtils.arrayEach(el.querySelectorAll(`.vxe-body--row[rowid="${rowid}"]`), elem => addClass(elem, 'row--hover'));
9163
9163
  }
9164
9164
  internalData.hoverRow = row;
9165
9165
  },
@@ -2211,15 +2211,6 @@
2211
2211
  .vxe-table .vxe-table--header-wrapper {
2212
2212
  color: var(--vxe-ui-table-header-font-color);
2213
2213
  }
2214
- .vxe-table .vxe-table--header-wrapper::after {
2215
- content: "";
2216
- position: absolute;
2217
- left: 0;
2218
- bottom: 0;
2219
- height: 0;
2220
- width: 100%;
2221
- border-bottom: var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
2222
- }
2223
2214
  .vxe-table .vxe-cell--sort {
2224
2215
  text-align: center;
2225
2216
  position: relative;
@@ -2467,11 +2458,6 @@
2467
2458
  .vxe-table--render-default.column--highlight .vxe-header--column:not(.col--seq):hover {
2468
2459
  background-color: var(--vxe-ui-table-column-hover-background-color);
2469
2460
  }
2470
- .vxe-table--render-default.header-cell--area .vxe-table--header-wrapper {
2471
- -webkit-user-select: none;
2472
- -moz-user-select: none;
2473
- user-select: none;
2474
- }
2475
2461
  .vxe-table--render-default.body-cell--area .vxe-table--body-wrapper {
2476
2462
  -webkit-user-select: none;
2477
2463
  -moz-user-select: none;
@@ -2654,9 +2640,6 @@
2654
2640
  .vxe-table--render-default.border--none .vxe-table--border-line {
2655
2641
  display: none;
2656
2642
  }
2657
- .vxe-table--render-default.border--none .vxe-table--header-wrapper::after {
2658
- display: none;
2659
- }
2660
2643
  .vxe-table--render-default.size--medium {
2661
2644
  font-size: var(--vxe-ui-font-size-medium);
2662
2645
  }