vxe-table 4.10.6-beta.9 → 4.10.7

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 (178) hide show
  1. package/es/grid/src/grid.js +1 -1
  2. package/es/index.css +1 -1
  3. package/es/index.min.css +1 -1
  4. package/es/locale/lang/ar-EG.js +2 -1
  5. package/es/locale/lang/de-DE.js +2 -1
  6. package/es/locale/lang/en-US.js +4 -3
  7. package/es/locale/lang/es-ES.js +2 -1
  8. package/es/locale/lang/fr-FR.js +2 -1
  9. package/es/locale/lang/hu-HU.js +2 -1
  10. package/es/locale/lang/hy-AM.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 +4 -3
  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 +518 -517
  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/edit/hook.js +7 -7
  26. package/es/table/module/export/hook.js +97 -62
  27. package/es/table/module/keyboard/hook.js +63 -27
  28. package/es/table/src/body.js +107 -85
  29. package/es/table/src/cell.js +41 -55
  30. package/es/table/src/column.js +13 -1
  31. package/es/table/src/columnInfo.js +3 -0
  32. package/es/table/src/emits.js +2 -0
  33. package/es/table/src/footer.js +45 -7
  34. package/es/table/src/header.js +67 -165
  35. package/es/table/src/props.js +14 -4
  36. package/es/table/src/table.js +858 -398
  37. package/es/table/src/util.js +77 -62
  38. package/es/table/style.css +246 -191
  39. package/es/table/style.min.css +1 -1
  40. package/es/ui/index.js +20 -7
  41. package/es/ui/src/log.js +1 -1
  42. package/es/vxe-table/style.css +246 -191
  43. package/es/vxe-table/style.min.css +1 -1
  44. package/lib/grid/src/grid.js +1 -1
  45. package/lib/grid/src/grid.min.js +1 -1
  46. package/lib/index.css +1 -1
  47. package/lib/index.min.css +1 -1
  48. package/lib/index.umd.js +1479 -875
  49. package/lib/index.umd.min.js +1 -1
  50. package/lib/locale/lang/ar-EG.js +2 -1
  51. package/lib/locale/lang/ar-EG.min.js +1 -1
  52. package/lib/locale/lang/de-DE.js +2 -1
  53. package/lib/locale/lang/de-DE.min.js +1 -1
  54. package/lib/locale/lang/en-US.js +4 -3
  55. package/lib/locale/lang/en-US.min.js +1 -1
  56. package/lib/locale/lang/en-US.umd.js +4 -3
  57. package/lib/locale/lang/es-ES.js +2 -1
  58. package/lib/locale/lang/es-ES.min.js +1 -1
  59. package/lib/locale/lang/es-ES.umd.js +2 -1
  60. package/lib/locale/lang/fr-FR.js +2 -1
  61. package/lib/locale/lang/fr-FR.min.js +1 -1
  62. package/lib/locale/lang/hu-HU.js +2 -1
  63. package/lib/locale/lang/hu-HU.min.js +1 -1
  64. package/lib/locale/lang/hu-HU.umd.js +2 -1
  65. package/lib/locale/lang/hy-AM.js +2 -1
  66. package/lib/locale/lang/hy-AM.min.js +1 -1
  67. package/lib/locale/lang/it-IT.js +2 -1
  68. package/lib/locale/lang/it-IT.min.js +1 -1
  69. package/lib/locale/lang/ja-JP.js +2 -1
  70. package/lib/locale/lang/ja-JP.min.js +1 -1
  71. package/lib/locale/lang/ja-JP.umd.js +2 -1
  72. package/lib/locale/lang/ko-KR.js +2 -1
  73. package/lib/locale/lang/ko-KR.min.js +1 -1
  74. package/lib/locale/lang/ko-KR.umd.js +2 -1
  75. package/lib/locale/lang/nb-NO.js +2 -1
  76. package/lib/locale/lang/nb-NO.min.js +1 -1
  77. package/lib/locale/lang/pt-BR.js +2 -1
  78. package/lib/locale/lang/pt-BR.min.js +1 -1
  79. package/lib/locale/lang/pt-BR.umd.js +2 -1
  80. package/lib/locale/lang/ru-RU.js +4 -3
  81. package/lib/locale/lang/ru-RU.min.js +1 -1
  82. package/lib/locale/lang/ru-RU.umd.js +4 -3
  83. package/lib/locale/lang/th-TH.js +2 -1
  84. package/lib/locale/lang/th-TH.min.js +1 -1
  85. package/lib/locale/lang/ug-CN.js +2 -1
  86. package/lib/locale/lang/ug-CN.min.js +1 -1
  87. package/lib/locale/lang/uk-UA.js +518 -517
  88. package/lib/locale/lang/uk-UA.min.js +1 -1
  89. package/lib/locale/lang/uk-UA.umd.js +518 -517
  90. package/lib/locale/lang/vi-VN.js +2 -1
  91. package/lib/locale/lang/vi-VN.min.js +1 -1
  92. package/lib/locale/lang/zh-CHT.js +2 -1
  93. package/lib/locale/lang/zh-CHT.min.js +1 -1
  94. package/lib/locale/lang/zh-CN.js +2 -1
  95. package/lib/locale/lang/zh-CN.min.js +1 -1
  96. package/lib/locale/lang/zh-CN.umd.js +2 -1
  97. package/lib/style.css +1 -1
  98. package/lib/style.min.css +1 -1
  99. package/lib/table/module/edit/hook.js +7 -2
  100. package/lib/table/module/edit/hook.min.js +1 -1
  101. package/lib/table/module/export/hook.js +97 -57
  102. package/lib/table/module/export/hook.min.js +1 -1
  103. package/lib/table/module/keyboard/hook.js +71 -28
  104. package/lib/table/module/keyboard/hook.min.js +1 -1
  105. package/lib/table/src/body.js +111 -81
  106. package/lib/table/src/body.min.js +1 -1
  107. package/lib/table/src/cell.js +32 -42
  108. package/lib/table/src/cell.min.js +1 -1
  109. package/lib/table/src/column.js +13 -1
  110. package/lib/table/src/column.min.js +1 -1
  111. package/lib/table/src/columnInfo.js +3 -0
  112. package/lib/table/src/columnInfo.min.js +1 -1
  113. package/lib/table/src/emits.js +1 -1
  114. package/lib/table/src/emits.min.js +1 -1
  115. package/lib/table/src/footer.js +45 -5
  116. package/lib/table/src/footer.min.js +1 -1
  117. package/lib/table/src/header.js +51 -178
  118. package/lib/table/src/header.min.js +1 -1
  119. package/lib/table/src/props.js +14 -4
  120. package/lib/table/src/props.min.js +1 -1
  121. package/lib/table/src/table.js +911 -384
  122. package/lib/table/src/table.min.js +1 -1
  123. package/lib/table/src/util.js +100 -82
  124. package/lib/table/src/util.min.js +1 -1
  125. package/lib/table/style/style.css +246 -191
  126. package/lib/table/style/style.min.css +1 -1
  127. package/lib/ui/index.js +20 -7
  128. package/lib/ui/index.min.js +1 -1
  129. package/lib/ui/src/log.js +1 -1
  130. package/lib/ui/src/log.min.js +1 -1
  131. package/lib/vxe-table/style/style.css +246 -191
  132. package/lib/vxe-table/style/style.min.css +1 -1
  133. package/package.json +2 -2
  134. package/packages/grid/src/grid.ts +1 -1
  135. package/packages/locale/lang/ar-EG.ts +2 -1
  136. package/packages/locale/lang/de-DE.ts +2 -1
  137. package/packages/locale/lang/en-US.ts +4 -3
  138. package/packages/locale/lang/es-ES.ts +2 -1
  139. package/packages/locale/lang/fr-FR.ts +2 -1
  140. package/packages/locale/lang/hu-HU.ts +2 -1
  141. package/packages/locale/lang/hy-AM.ts +2 -1
  142. package/packages/locale/lang/it-IT.ts +2 -1
  143. package/packages/locale/lang/ja-JP.ts +2 -1
  144. package/packages/locale/lang/ko-KR.ts +2 -1
  145. package/packages/locale/lang/nb-NO.ts +2 -1
  146. package/packages/locale/lang/pt-BR.ts +2 -1
  147. package/packages/locale/lang/ru-RU.ts +4 -3
  148. package/packages/locale/lang/th-TH.ts +2 -1
  149. package/packages/locale/lang/ug-CN.ts +2 -1
  150. package/packages/locale/lang/uk-UA.ts +518 -517
  151. package/packages/locale/lang/vi-VN.ts +2 -1
  152. package/packages/locale/lang/zh-CHT.ts +2 -1
  153. package/packages/locale/lang/zh-CN.ts +2 -1
  154. package/packages/table/module/edit/hook.ts +7 -7
  155. package/packages/table/module/export/hook.ts +118 -65
  156. package/packages/table/module/keyboard/hook.ts +59 -25
  157. package/packages/table/src/body.ts +126 -95
  158. package/packages/table/src/cell.ts +41 -63
  159. package/packages/table/src/column.ts +13 -1
  160. package/packages/table/src/columnInfo.ts +3 -0
  161. package/packages/table/src/emits.ts +5 -1
  162. package/packages/table/src/footer.ts +48 -8
  163. package/packages/table/src/header.ts +67 -165
  164. package/packages/table/src/props.ts +14 -5
  165. package/packages/table/src/table.ts +862 -398
  166. package/packages/table/src/util.ts +81 -62
  167. package/packages/ui/index.ts +19 -6
  168. package/styles/components/table.scss +313 -274
  169. package/styles/theme/base.scss +4 -6
  170. package/styles/theme/dark.scss +1 -0
  171. package/styles/theme/light.scss +1 -0
  172. package/styles/variable.scss +1 -1
  173. /package/es/{iconfont.1736854674495.ttf → iconfont.1739008158505.ttf} +0 -0
  174. /package/es/{iconfont.1736854674495.woff → iconfont.1739008158505.woff} +0 -0
  175. /package/es/{iconfont.1736854674495.woff2 → iconfont.1739008158505.woff2} +0 -0
  176. /package/lib/{iconfont.1736854674495.ttf → iconfont.1739008158505.ttf} +0 -0
  177. /package/lib/{iconfont.1736854674495.woff → iconfont.1739008158505.woff} +0 -0
  178. /package/lib/{iconfont.1736854674495.woff2 → iconfont.1739008158505.woff2} +0 -0
@@ -8,10 +8,8 @@ var _vue = require("vue");
8
8
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
9
9
  var _ui = require("../../ui");
10
10
  var _util = require("./util");
11
- var _dom = require("../../ui/src/dom");
12
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
12
  const {
14
- getI18n,
15
13
  renderer,
16
14
  renderEmptyElement
17
15
  } = _ui.VxeUI;
@@ -36,18 +34,13 @@ var _default = exports.default = (0, _vue.defineComponent)({
36
34
  reactData: tableReactData,
37
35
  internalData: tableInternalData
38
36
  } = $xeTable;
39
- const {
40
- refElem: tableRefElem,
41
- refLeftContainer,
42
- refRightContainer,
43
- refCellResizeBar,
44
- refCellResizeTip
45
- } = $xeTable.getRefMaps();
46
37
  const {
47
38
  computeColumnOpts,
48
39
  computeColumnDragOpts,
49
- computeResizableOpts,
50
- computeScrollbarXToTop
40
+ computeCellOpts,
41
+ computeMouseOpts,
42
+ computeHeaderCellOpts,
43
+ computeDefaultRowHeight
51
44
  } = $xeTable.getComputeMaps();
52
45
  const headerColumn = (0, _vue.ref)([]);
53
46
  const refElem = (0, _vue.ref)();
@@ -63,152 +56,6 @@ var _default = exports.default = (0, _vue.defineComponent)({
63
56
  } = tableReactData;
64
57
  headerColumn.value = isGroup ? (0, _util.convertHeaderColumnToRows)(props.tableGroupColumn) : [];
65
58
  };
66
- const resizeMousedownEvent = (evnt, params) => {
67
- const {
68
- column
69
- } = params;
70
- const {
71
- fixedType
72
- } = props;
73
- const {
74
- scrollbarHeight
75
- } = tableReactData;
76
- const {
77
- elemStore,
78
- visibleColumn
79
- } = tableInternalData;
80
- const resizableOpts = computeResizableOpts.value;
81
- const tableEl = tableRefElem.value;
82
- const leftContainerElem = refLeftContainer.value;
83
- const rightContainerElem = refRightContainer.value;
84
- const resizeBarElem = refCellResizeBar.value;
85
- const resizeTipElem = refCellResizeTip.value;
86
- const scrollbarXToTop = computeScrollbarXToTop.value;
87
- const {
88
- clientX: dragClientX
89
- } = evnt;
90
- const wrapperElem = refElem.value;
91
- const dragBtnElem = evnt.target;
92
- let resizeColumn = column;
93
- if (column.children && column.children.length) {
94
- _xeUtils.default.eachTree(column.children, childColumn => {
95
- resizeColumn = childColumn;
96
- });
97
- }
98
- const cell = dragBtnElem.parentNode;
99
- const cellParams = Object.assign(params, {
100
- cell
101
- });
102
- let dragLeft = 0;
103
- const bodyScrollElem = (0, _util.getRefElem)(elemStore['main-body-scroll']);
104
- if (!bodyScrollElem) {
105
- return;
106
- }
107
- const pos = (0, _dom.getOffsetPos)(dragBtnElem, wrapperElem);
108
- const dragBtnWidth = dragBtnElem.clientWidth;
109
- const dragBtnOffsetWidth = Math.floor(dragBtnWidth / 2);
110
- const minInterval = (0, _util.getColReMinWidth)(cellParams) - dragBtnOffsetWidth; // 列之间的最小间距
111
- let dragMinLeft = pos.left - cell.clientWidth + dragBtnWidth + minInterval;
112
- let dragPosLeft = pos.left + dragBtnOffsetWidth;
113
- const domMousemove = document.onmousemove;
114
- const domMouseup = document.onmouseup;
115
- const isLeftFixed = fixedType === 'left';
116
- const isRightFixed = fixedType === 'right';
117
- // 计算左右侧固定列偏移量
118
- let fixedOffsetWidth = 0;
119
- if (isLeftFixed || isRightFixed) {
120
- const siblingProp = isLeftFixed ? 'nextElementSibling' : 'previousElementSibling';
121
- let tempCellElem = cell[siblingProp];
122
- while (tempCellElem) {
123
- if ((0, _dom.hasClass)(tempCellElem, 'fixed--hidden')) {
124
- break;
125
- } else if (!(0, _dom.hasClass)(tempCellElem, 'col--group')) {
126
- fixedOffsetWidth += tempCellElem.offsetWidth;
127
- }
128
- tempCellElem = tempCellElem[siblingProp];
129
- }
130
- if (isRightFixed && rightContainerElem) {
131
- dragPosLeft = rightContainerElem.offsetLeft + fixedOffsetWidth;
132
- }
133
- }
134
- // 处理拖动事件
135
- const updateEvent = evnt => {
136
- evnt.stopPropagation();
137
- evnt.preventDefault();
138
- const tableHeight = tableEl.clientHeight;
139
- const offsetX = evnt.clientX - dragClientX;
140
- let left = dragPosLeft + offsetX;
141
- const scrollLeft = fixedType ? 0 : bodyScrollElem.scrollLeft;
142
- if (isLeftFixed) {
143
- // 左固定列(不允许超过右侧固定列、不允许超过右边距)
144
- left = Math.min(left, (rightContainerElem ? rightContainerElem.offsetLeft : bodyScrollElem.clientWidth) - fixedOffsetWidth - minInterval);
145
- } else if (isRightFixed) {
146
- // 右侧固定列(不允许超过左侧固定列、不允许超过左边距)
147
- dragMinLeft = (leftContainerElem ? leftContainerElem.clientWidth : 0) + fixedOffsetWidth + minInterval;
148
- left = Math.min(left, dragPosLeft + cell.clientWidth - minInterval);
149
- } else {
150
- dragMinLeft = Math.max(bodyScrollElem.scrollLeft, dragMinLeft);
151
- // left = Math.min(left, bodyScrollElem.clientWidth + bodyScrollElem.scrollLeft - 40)
152
- }
153
- dragLeft = Math.max(left, dragMinLeft);
154
- const resizeBarLeft = Math.max(1, dragLeft - scrollLeft);
155
- resizeBarElem.style.left = `${resizeBarLeft}px`;
156
- resizeBarElem.style.top = `${scrollbarXToTop ? scrollbarHeight : 0}px`;
157
- resizeBarElem.style.height = `${scrollbarXToTop ? tableHeight - scrollbarHeight : tableHeight}px`;
158
- if (resizableOpts.showDragTip && resizeTipElem) {
159
- const tableWidth = tableEl.clientWidth;
160
- const wrapperRect = wrapperElem.getBoundingClientRect();
161
- const resizeBarWidth = resizeBarElem.clientWidth;
162
- const resizeTipWidth = resizeTipElem.clientWidth;
163
- const resizeTipHeight = resizeTipElem.clientHeight;
164
- let resizeTipLeft = -resizeTipWidth;
165
- if (resizeBarLeft < resizeTipWidth + resizeBarWidth) {
166
- resizeTipLeft = 0;
167
- } else if (resizeBarLeft > tableWidth) {
168
- resizeTipLeft += tableWidth - resizeBarLeft;
169
- }
170
- resizeTipElem.style.left = `${resizeTipLeft}px`;
171
- resizeTipElem.style.top = `${Math.min(tableHeight - resizeTipHeight, Math.max(0, evnt.clientY - wrapperRect.y - resizeTipHeight / 2))}px`;
172
- resizeTipElem.textContent = getI18n('vxe.table.resizeColTip', [resizeColumn.renderWidth + (isRightFixed ? dragPosLeft - dragLeft : dragLeft - dragPosLeft)]);
173
- }
174
- };
175
- tableReactData._isResize = true;
176
- (0, _dom.addClass)(tableEl, 'drag--resize');
177
- resizeBarElem.style.display = 'block';
178
- document.onmousemove = updateEvent;
179
- document.onmouseup = function (evnt) {
180
- document.onmousemove = domMousemove;
181
- document.onmouseup = domMouseup;
182
- const resizeWidth = resizeColumn.renderWidth + (isRightFixed ? dragPosLeft - dragLeft : dragLeft - dragPosLeft);
183
- resizeColumn.resizeWidth = resizeWidth;
184
- if (resizableOpts.dragMode === 'fixed') {
185
- visibleColumn.forEach(item => {
186
- if (item.id !== resizeColumn.id) {
187
- if (!item.resizeWidth) {
188
- item.resizeWidth = item.renderWidth;
189
- }
190
- }
191
- });
192
- }
193
- resizeBarElem.style.display = 'none';
194
- tableReactData._isResize = false;
195
- tableInternalData._lastResizeTime = Date.now();
196
- $xeTable.analyColumnWidth();
197
- $xeTable.recalculate(true).then(() => {
198
- $xeTable.saveCustomStore('update:visible');
199
- $xeTable.updateCellAreas();
200
- $xeTable.dispatchEvent('resizable-change', Object.assign(Object.assign({}, params), {
201
- resizeWidth
202
- }), evnt);
203
- setTimeout(() => $xeTable.recalculate(true), 300);
204
- });
205
- (0, _dom.removeClass)(tableEl, 'drag--resize');
206
- };
207
- updateEvent(evnt);
208
- if ($xeTable.closeMenu) {
209
- $xeTable.closeMenu();
210
- }
211
- };
212
59
  const renderRows = (isGroup, isOptimizeMode, cols, $rowIndex) => {
213
60
  const {
214
61
  fixedType
@@ -235,6 +82,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
235
82
  } = tableInternalData;
236
83
  const columnOpts = computeColumnOpts.value;
237
84
  const columnDragOpts = computeColumnDragOpts.value;
85
+ const cellOpts = computeCellOpts.value;
86
+ const defaultRowHeight = computeDefaultRowHeight.value;
87
+ const headerCellOpts = computeHeaderCellOpts.value;
88
+ const currCellHeight = (0, _util.getCellHeight)(headerCellOpts.height || cellOpts.height) || defaultRowHeight;
238
89
  const {
239
90
  disabledMethod: dragDisabledMethod,
240
91
  isCrossDrag,
@@ -256,6 +107,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
256
107
  const compConf = renderOpts ? renderer.get(renderOpts.name) : null;
257
108
  const isColGroup = column.children && column.children.length;
258
109
  const fixedHiddenColumn = fixedType ? column.fixed !== fixedType && !isColGroup : !!column.fixed && overflowX;
110
+ const isPadding = _xeUtils.default.isBoolean(headerCellOpts.padding) ? headerCellOpts.padding : cellOpts.padding;
259
111
  const headOverflow = _xeUtils.default.eqNull(showHeaderOverflow) ? allColumnHeaderOverflow : showHeaderOverflow;
260
112
  const headAlign = headerAlign || (compConf ? compConf.tableHeaderCellAlign : '') || allHeaderAlign || align || (compConf ? compConf.tableCellAlign : '') || allAlign;
261
113
  let showEllipsis = headOverflow === 'ellipsis';
@@ -270,7 +122,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
270
122
  }
271
123
  const columnIndex = $xeTable.getColumnIndex(column);
272
124
  const _columnIndex = $xeTable.getVTColumnIndex(column);
273
- const params = {
125
+ const cellParams = {
274
126
  $table: $xeTable,
275
127
  $grid: $xeTable.xegrid,
276
128
  $rowIndex,
@@ -290,8 +142,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
290
142
  rowspan: column.rowSpan > 1 ? column.rowSpan : null
291
143
  };
292
144
  const thOns = {
293
- onClick: evnt => $xeTable.triggerHeaderCellClickEvent(evnt, params),
294
- onDblclick: evnt => $xeTable.triggerHeaderCellDblclickEvent(evnt, params)
145
+ onClick: evnt => $xeTable.triggerHeaderCellClickEvent(evnt, cellParams),
146
+ onDblclick: evnt => $xeTable.triggerHeaderCellDblclickEvent(evnt, cellParams)
295
147
  };
296
148
  // 横向虚拟滚动不支持动态行高
297
149
  if (scrollXLoad && !hasEllipsis) {
@@ -300,11 +152,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
300
152
  const isColDragCell = columnOpts.drag && columnDragOpts.trigger === 'cell';
301
153
  let isDisabledDrag = false;
302
154
  if (isColDragCell) {
303
- isDisabledDrag = !!(dragDisabledMethod && dragDisabledMethod(params));
155
+ isDisabledDrag = !!(dragDisabledMethod && dragDisabledMethod(cellParams));
304
156
  }
305
157
  // 按下事件处理
306
158
  if (mouseConfig || isColDragCell) {
307
- thOns.onMousedown = evnt => $xeTable.triggerHeaderCellMousedownEvent(evnt, params);
159
+ thOns.onMousedown = evnt => $xeTable.triggerHeaderCellMousedownEvent(evnt, cellParams);
308
160
  }
309
161
  // 拖拽列事件
310
162
  if (columnOpts.drag) {
@@ -322,6 +174,12 @@ var _default = exports.default = (0, _vue.defineComponent)({
322
174
  if (scrollXLoad && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
323
175
  isVNPreEmptyStatus = true;
324
176
  }
177
+ const tcStyle = {};
178
+ if (hasEllipsis) {
179
+ tcStyle.height = `${currCellHeight}px`;
180
+ } else {
181
+ tcStyle.minHeight = `${currCellHeight}px`;
182
+ }
325
183
  return (0, _vue.h)('th', Object.assign(Object.assign(Object.assign({
326
184
  class: ['vxe-header--column', colid, {
327
185
  [`col--${headAlign}`]: headAlign,
@@ -332,14 +190,15 @@ var _default = exports.default = (0, _vue.defineComponent)({
332
190
  'col--ellipsis': hasEllipsis,
333
191
  'fixed--width': !isAutoCellWidth,
334
192
  'fixed--hidden': fixedHiddenColumn,
193
+ 'is--padding': isPadding,
335
194
  'is--sortable': column.sortable,
336
195
  'col--filter': !!filters,
337
196
  'is--filter-active': hasFilter,
338
197
  'is--drag-active': !column.fixed && !isDisabledDrag && (isCrossDrag || isPeerDrag || !column.parentId),
339
198
  'is--drag-disabled': isDisabledDrag,
340
199
  'col--current': currentColumn === column
341
- }, headerClassName ? _xeUtils.default.isFunction(headerClassName) ? headerClassName(params) : headerClassName : '', headerCellClassName ? _xeUtils.default.isFunction(headerCellClassName) ? headerCellClassName(params) : headerCellClassName : ''],
342
- style: headerCellStyle ? _xeUtils.default.isFunction(headerCellStyle) ? headerCellStyle(params) : headerCellStyle : null
200
+ }, headerClassName ? _xeUtils.default.isFunction(headerClassName) ? headerClassName(cellParams) : headerClassName : '', headerCellClassName ? _xeUtils.default.isFunction(headerCellClassName) ? headerCellClassName(cellParams) : headerCellClassName : ''],
201
+ style: headerCellStyle ? _xeUtils.default.isFunction(headerCellStyle) ? headerCellStyle(cellParams) : headerCellStyle : null
343
202
  }, thAttrs), thOns), {
344
203
  key: columnKey || scrollXLoad || scrollYLoad || columnOpts.useKey || columnOpts.drag || isColGroup ? colid : $columnIndex
345
204
  }), [(0, _vue.h)('div', {
@@ -347,17 +206,21 @@ var _default = exports.default = (0, _vue.defineComponent)({
347
206
  'c--title': showTitle,
348
207
  'c--tooltip': showTooltip,
349
208
  'c--ellipsis': showEllipsis
350
- }]
351
- }, isVNPreEmptyStatus || isOptimizeMode && fixedHiddenColumn ? [] : column.renderHeader(params)),
209
+ }],
210
+ style: tcStyle
211
+ }, isVNPreEmptyStatus || isOptimizeMode && fixedHiddenColumn ? [] : [(0, _vue.h)('div', {
212
+ colid,
213
+ class: 'vxe-cell--wrapper'
214
+ }, column.renderHeader(cellParams))]),
352
215
  /**
353
216
  * 列宽拖动
354
217
  */
355
218
  !fixedHiddenColumn && showResizable ? (0, _vue.h)('div', {
356
- class: ['vxe-resizable', {
219
+ class: ['vxe-cell--col-resizable', {
357
220
  'is--line': !border || border === 'none'
358
221
  }],
359
- onMousedown: evnt => resizeMousedownEvent(evnt, params),
360
- onDblclick: evnt => $xeTable.handleResizeDblclickEvent(evnt, params)
222
+ onMousedown: evnt => $xeTable.handleColResizeMousedownEvent(evnt, fixedType, cellParams),
223
+ onDblclick: evnt => $xeTable.handleColResizeDblclickEvent(evnt, cellParams)
361
224
  }) : renderEmptyElement($xeTable)]);
362
225
  });
363
226
  };
@@ -370,6 +233,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
370
233
  headerRowStyle
371
234
  } = tableProps;
372
235
  const {
236
+ isColLoading,
373
237
  isDragColMove
374
238
  } = tableReactData;
375
239
  const columnOpts = computeColumnOpts.value;
@@ -381,7 +245,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
381
245
  fixed: fixedType,
382
246
  type: renderType
383
247
  };
384
- if (columnOpts.drag && columnDragOpts.animation) {
248
+ if (!isColLoading && columnOpts.drag && columnDragOpts.animation) {
385
249
  return (0, _vue.h)(_vue.TransitionGroup, {
386
250
  key: $rowIndex,
387
251
  name: `vxe-header--col-list${isDragColMove ? '' : '-disabled'}`,
@@ -406,6 +270,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
406
270
  tableColumn
407
271
  } = props;
408
272
  const {
273
+ mouseConfig,
409
274
  showHeaderOverflow: allColumnHeaderOverflow,
410
275
  spanMethod,
411
276
  footerSpanMethod
@@ -420,6 +285,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
420
285
  visibleColumn,
421
286
  fullColumnIdData
422
287
  } = tableInternalData;
288
+ const mouseOpts = computeMouseOpts.value;
423
289
  let renderHeaderList = headerColumn.value;
424
290
  let renderColumnList = tableColumn;
425
291
  let isOptimizeMode = false;
@@ -506,14 +372,21 @@ var _default = exports.default = (0, _vue.defineComponent)({
506
372
  */
507
373
  (0, _vue.h)('thead', {
508
374
  ref: refHeaderTHead
509
- }, renderHeads(isGroup, isOptimizeMode, renderHeaderList))])]),
510
- /**
511
- * 其他
512
- */
513
- (0, _vue.h)('div', {
514
- ref: refHeaderBorderRepair,
515
- class: 'vxe-table--header-border-line'
516
- })]);
375
+ }, renderHeads(isGroup, isOptimizeMode, renderHeaderList))]), mouseConfig && mouseOpts.area ? (0, _vue.h)('div', {
376
+ class: 'vxe-table--cell-area'
377
+ }, [(0, _vue.h)('span', {
378
+ class: 'vxe-table--cell-main-area'
379
+ }), (0, _vue.h)('span', {
380
+ class: 'vxe-table--cell-copy-area'
381
+ }), (0, _vue.h)('span', {
382
+ class: 'vxe-table--cell-extend-area'
383
+ }), (0, _vue.h)('span', {
384
+ class: 'vxe-table--cell-multi-area'
385
+ }), (0, _vue.h)('span', {
386
+ class: 'vxe-table--cell-active-area'
387
+ }), (0, _vue.h)('span', {
388
+ class: 'vxe-table--cell-col-status-area'
389
+ })]) : renderEmptyElement($xeTable)])]);
517
390
  };
518
391
  (0, _vue.watch)(() => props.tableColumn, uploadColumn);
519
392
  (0, _vue.onMounted)(() => {
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="header";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(B){let V=(0,_vue.inject)("$xeTable",{}),{xID:f,props:m,reactData:Y,internalData:K}=V,{refElem:r,refLeftContainer:s,refRightContainer:u,refCellResizeBar:c,refCellResizeTip:p}=V.getRefMaps(),{computeColumnOpts:g,computeColumnDragOpts:x,computeResizableOpts:v,computeScrollbarXToTop:h}=V.getComputeMaps(),_=(0,_vue.ref)([]),H=(0,_vue.ref)(),b=(0,_vue.ref)(),C=(0,_vue.ref)(),y=(0,_vue.ref)(),w=(0,_vue.ref)(),D=(0,_vue.ref)(),M=(0,_vue.ref)(),t=()=>{var e=Y.isGroup;_.value=e?(0,_util.convertHeaderColumnToRows)(B.tableGroupColumn):[]},J=(e,a)=>{var l=a.column;let f=B.fixedType,m=Y.scrollbarHeight,{elemStore:t,visibleColumn:i}=K,g=v.value,x=r.value,_=s.value,b=u.value,C=c.value,y=p.value,w=h.value,D=e.clientX,M=H.value;var n=e.target;let T=l,z=(l.children&&l.children.length&&_xeUtils.default.eachTree(l.children,e=>{T=e}),n.parentNode);l=Object.assign(a,{cell:z});let S=0,E=(0,_util.getRefElem)(t["main-body-scroll"]);if(E){var o=(0,_dom.getOffsetPos)(n,M),n=n.clientWidth,d=Math.floor(n/2);let s=(0,_util.getColReMinWidth)(l)-d,u=o.left-z.clientWidth+n+s,c=o.left+d,t=document.onmousemove,r=document.onmouseup,p="left"===f,v="right"===f,h=0;if(p||v){var W=p?"nextElementSibling":"previousElementSibling";let e=z[W];for(;e&&!(0,_dom.hasClass)(e,"fixed--hidden");)(0,_dom.hasClass)(e,"col--group")||(h+=e.offsetWidth),e=e[W];v&&b&&(c=b.offsetLeft+h)}l=l=>{l.stopPropagation(),l.preventDefault();var t=x.clientHeight,r=l.clientX-D;let e=c+r;r=f?0:E.scrollLeft,p?e=Math.min(e,(b?b.offsetLeft:E.clientWidth)-h-s):v?(u=(_?_.clientWidth:0)+h+s,e=Math.min(e,c+z.clientWidth-s)):u=Math.max(E.scrollLeft,u),S=Math.max(e,u),r=Math.max(1,S-r);if(C.style.left=r+"px",C.style.top=`${w?m:0}px`,C.style.height=`${w?t-m:t}px`,g.showDragTip&&y){var a=x.clientWidth,i=M.getBoundingClientRect(),n=C.clientWidth,o=y.clientWidth,d=y.clientHeight;let e=-o;r<o+n?e=0:a<r&&(e+=a-r),y.style.left=e+"px",y.style.top=Math.min(t-d,Math.max(0,l.clientY-i.y-d/2))+"px",y.textContent=getI18n("vxe.table.resizeColTip",[T.renderWidth+(v?c-S:S-c)])}};Y._isResize=!0,(0,_dom.addClass)(x,"drag--resize"),C.style.display="block",document.onmousemove=l,document.onmouseup=function(e){document.onmousemove=t,document.onmouseup=r;let l=T.renderWidth+(v?c-S:S-c);T.resizeWidth=l,"fixed"===g.dragMode&&i.forEach(e=>{e.id===T.id||e.resizeWidth||(e.resizeWidth=e.renderWidth)}),C.style.display="none",Y._isResize=!1,K._lastResizeTime=Date.now(),V.analyColumnWidth(),V.recalculate(!0).then(()=>{V.saveCustomStore("update:visible"),V.updateCellAreas(),V.dispatchEvent("resizable-change",Object.assign(Object.assign({},a),{resizeWidth:l}),e),setTimeout(()=>V.recalculate(!0),300)}),(0,_dom.removeClass)(x,"drag--resize")},l(e),V.closeMenu&&V.closeMenu()}},T=(e,D,M,T)=>{let z=B.fixedType,{resizable:S,border:E,columnKey:W,headerCellClassName:H,headerCellStyle:R,showHeaderOverflow:I,headerAlign:O,align:k,mouseConfig:U}=m,{currentColumn:$,scrollXLoad:A,scrollYLoad:F,overflowX:L}=Y,j=K.scrollXStore,q=g.value,X=x.value,{disabledMethod:G,isCrossDrag:N,isPeerDrag:P}=X;return M.map((e,l)=>{var{type:t,showHeaderOverflow:r,headerAlign:a,align:i,filters:n,headerClassName:o,editRender:d,cellRender:s}=e,u=e.id,d=d||s,s=d?renderer.get(d.name):null,d=e.children&&e.children.length,c=z?e.fixed!==z&&!d:!!e.fixed&&L,r=_xeUtils.default.eqNull(r)?I:r,a=a||(s?s.tableHeaderCellAlign:"")||O||i||(s?s.tableCellAlign:"")||k;let p="ellipsis"===r;i="title"===r,s=!0===r||"tooltip"===r;let v=i||s||p,h=!1,f=null;n&&(f=n[0],h=n.some(e=>e.checked));var r=V.getColumnIndex(e),m=V.getVTColumnIndex(e);let g={$table:V,$grid:V.xegrid,$rowIndex:T,column:e,columnIndex:r,$columnIndex:l,_columnIndex:m,firstFilterOption:f,fixed:z,type:renderType,isHidden:c,hasFilter:h};var r={colid:u,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},x={onClick:e=>V.triggerHeaderCellClickEvent(e,g),onDblclick:e=>V.triggerHeaderCellDblclickEvent(e,g)},_=(A&&!v&&(p=v=!0),q.drag&&"cell"===X.trigger);let b=!1;_&&(b=!(!G||!G(g))),(U||_)&&(x.onMousedown=e=>V.triggerHeaderCellMousedownEvent(e,g)),q.drag&&(x.onDragstart=V.handleHeaderCellDragDragstartEvent,x.onDragend=V.handleHeaderCellDragDragendEvent,x.onDragover=V.handleHeaderCellDragDragoverEvent,_)&&(x.onMouseup=V.handleHeaderCellDragMouseupEvent);var _=l===M.length-1,C=_xeUtils.default.isBoolean(e.resizable)?e.resizable:q.resizable||S,y=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let w=!1;return A&&!e.fixed&&(m<j.visibleStartIndex-j.preloadSize||m>j.visibleEndIndex+j.preloadSize)&&(w=!0),(0,_vue.h)("th",Object.assign(Object.assign(Object.assign({class:["vxe-header--column",u,{["col--"+a]:a,["col--"+t]:t,"col--last":_,"col--fixed":e.fixed,"col--group":d,"col--ellipsis":v,"fixed--width":!y,"fixed--hidden":c,"is--sortable":e.sortable,"col--filter":!!n,"is--filter-active":h,"is--drag-active":!e.fixed&&!b&&(N||P||!e.parentId),"is--drag-disabled":b,"col--current":$===e},o?_xeUtils.default.isFunction(o)?o(g):o:"",H?_xeUtils.default.isFunction(H)?H(g):H:""],style:R?_xeUtils.default.isFunction(R)?R(g):R:null},r),x),{key:W||A||F||q.useKey||q.drag||d?u:l}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":i,"c--tooltip":s,"c--ellipsis":p}]},w||D&&c?[]:e.renderHeader(g)),!c&&C?(0,_vue.h)("div",{class:["vxe-resizable",{"is--line":!E||"none"===E}],onMousedown:e=>J(e,g),onDblclick:e=>V.handleResizeDblclickEvent(e,g)}):renderEmptyElement(V)])})};return(0,_vue.watch)(()=>B.tableColumn,t),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=B.fixedType,l=V.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=H,l[e+"scroll"]=b,l[e+"table"]=C,l[e+"colgroup"]=y,l[e+"list"]=w,l[e+"xSpace"]=D,l[e+"repair"]=M,t()})}),(0,_vue.onUnmounted)(()=>{var e=B.fixedType,l=V.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:t}=B;var{showHeaderOverflow:r,spanMethod:a,footerSpanMethod:i}=m,{isGroup:n,scrollXLoad:o,scrollYLoad:d,dragCol:s}=Y,{visibleColumn:u,fullColumnIdData:c}=K;let p=_.value,v=t,h=!1;return n?v=u:(!(o||d||r)||a||i||(h=!0),l&&(v=u,h)&&(v=e||[]),p=[v]),l||n||o&&s&&2<v.length&&(d=c[s.id])&&(r=d._index,a=v[0],i=v[v.length-1],u=c[a.id],o=c[i.id],u)&&o&&(d=u._index,a=o._index,r<d?(v=[s].concat(v),p=[[s].concat(p[0])].concat(p.slice(1))):a<r&&(v=v.concat([s]),p=[p[0].concat([s])].concat(p.slice(1)))),(0,_vue.h)("div",{ref:H,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:f},[(0,_vue.h)("div",{ref:b,class:"vxe-table--header-inner-wrapper",onScroll(e){V.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(V):(0,_vue.h)("div",{ref:D,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:C,class:"vxe-table--header",xid:f,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:y},v.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("thead",{ref:w},((r,a,e)=>{let i=B.fixedType,{headerRowClassName:n,headerRowStyle:o}=m,d=Y.isDragColMove,s=g.value,u=x.value;return e.map((e,l)=>{var t={$table:V,$rowIndex:l,fixed:i,type:renderType};return s.drag&&u.animation?(0,_vue.h)(_vue.TransitionGroup,{key:l,name:"vxe-header--col-list"+(d?"":"-disabled"),tag:"tr",class:["vxe-header--row",n?_xeUtils.default.isFunction(n)?n(t):n:""],style:o?_xeUtils.default.isFunction(o)?o(t):o:null},{default:()=>T(r,a,e,l)}):(0,_vue.h)("tr",{key:l,class:["vxe-header--row",n?_xeUtils.default.isFunction(n)?n(t):n:""],style:o?_xeUtils.default.isFunction(o)?o(t):o:null},T(r,a,e,l))})})(n,h,p))])]),(0,_vue.h)("div",{ref:M,class:"vxe-table--header-border-line"})])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="header";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){let J=(0,_vue.inject)("$xeTable",{}),{xID:_,props:m,reactData:b,internalData:C}=J,{computeColumnOpts:y,computeColumnDragOpts:w,computeCellOpts:a,computeMouseOpts:D,computeHeaderCellOpts:r,computeDefaultRowHeight:t}=J.getComputeMaps(),H=(0,_vue.ref)([]),E=(0,_vue.ref)(),S=(0,_vue.ref)(),M=(0,_vue.ref)(),T=(0,_vue.ref)(),I=(0,_vue.ref)(),O=(0,_vue.ref)(),n=(0,_vue.ref)(),i=()=>{var e=b.isGroup;H.value=e?(0,_util.convertHeaderColumnToRows)(f.tableGroupColumn):[]},U=(e,H,E,S)=>{let M=f.fixedType,{resizable:T,border:I,columnKey:O,headerCellClassName:U,headerCellStyle:k,showHeaderOverflow:z,headerAlign:R,align:$,mouseConfig:F}=m,{currentColumn:A,scrollXLoad:q,scrollYLoad:j,overflowX:G}=b,L=C.scrollXStore,N=y.value,X=w.value,V=a.value;var l=t.value;let B=r.value,K=(0,_util.getCellHeight)(B.height||V.height)||l,{disabledMethod:P,isCrossDrag:W,isPeerDrag:Y}=X;return E.map((e,l)=>{var{type:a,showHeaderOverflow:r,headerAlign:t,align:n,filters:i,headerClassName:o,editRender:d,cellRender:u}=e,s=e.id,d=d||u,u=d?renderer.get(d.name):null,d=e.children&&e.children.length,c=M?e.fixed!==M&&!d:!!e.fixed&&G,v=(_xeUtils.default.isBoolean(B.padding)?B:V).padding,r=_xeUtils.default.eqNull(r)?z:r,t=t||(u?u.tableHeaderCellAlign:"")||R||n||(u?u.tableCellAlign:"")||$;let p="ellipsis"===r;n="title"===r,u=!0===r||"tooltip"===r;let x=n||u||p,h=!1,g=null;i&&(g=i[0],h=i.some(e=>e.checked));var r=J.getColumnIndex(e),f=J.getVTColumnIndex(e);let _={$table:J,$grid:J.xegrid,$rowIndex:S,column:e,columnIndex:r,$columnIndex:l,_columnIndex:f,firstFilterOption:g,fixed:M,type:renderType,isHidden:c,hasFilter:h};var r={colid:s,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},m={onClick:e=>J.triggerHeaderCellClickEvent(e,_),onDblclick:e=>J.triggerHeaderCellDblclickEvent(e,_)},b=(q&&!x&&(p=x=!0),N.drag&&"cell"===X.trigger);let C=!1;b&&(C=!(!P||!P(_))),(F||b)&&(m.onMousedown=e=>J.triggerHeaderCellMousedownEvent(e,_)),N.drag&&(m.onDragstart=J.handleHeaderCellDragDragstartEvent,m.onDragend=J.handleHeaderCellDragDragendEvent,m.onDragover=J.handleHeaderCellDragDragoverEvent,b)&&(m.onMouseup=J.handleHeaderCellDragMouseupEvent);var b=l===E.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:N.resizable||T,w=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let D=!1;q&&!e.fixed&&(f<L.visibleStartIndex-L.preloadSize||f>L.visibleEndIndex+L.preloadSize)&&(D=!0);f={};return x?f.height=K+"px":f.minHeight=K+"px",(0,_vue.h)("th",Object.assign(Object.assign(Object.assign({class:["vxe-header--column",s,{["col--"+t]:t,["col--"+a]:a,"col--last":b,"col--fixed":e.fixed,"col--group":d,"col--ellipsis":x,"fixed--width":!w,"fixed--hidden":c,"is--padding":v,"is--sortable":e.sortable,"col--filter":!!i,"is--filter-active":h,"is--drag-active":!e.fixed&&!C&&(W||Y||!e.parentId),"is--drag-disabled":C,"col--current":A===e},o?_xeUtils.default.isFunction(o)?o(_):o:"",U?_xeUtils.default.isFunction(U)?U(_):U:""],style:k?_xeUtils.default.isFunction(k)?k(_):k:null},r),m),{key:O||q||j||N.useKey||N.drag||d?s:l}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":n,"c--tooltip":u,"c--ellipsis":p}],style:f},D||H&&c?[]:[(0,_vue.h)("div",{colid:s,class:"vxe-cell--wrapper"},e.renderHeader(_))]),!c&&y?(0,_vue.h)("div",{class:["vxe-cell--col-resizable",{"is--line":!I||"none"===I}],onMousedown:e=>J.handleColResizeMousedownEvent(e,M,_),onDblclick:e=>J.handleColResizeDblclickEvent(e,_)}):renderEmptyElement(J)])})};return(0,_vue.watch)(()=>f.tableColumn,i),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f.fixedType,l=J.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=E,l[e+"scroll"]=S,l[e+"table"]=M,l[e+"colgroup"]=T,l[e+"list"]=I,l[e+"xSpace"]=O,l[e+"repair"]=n,i()})}),(0,_vue.onUnmounted)(()=>{var e=f.fixedType,l=J.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:a}=f;var{mouseConfig:r,showHeaderOverflow:t,spanMethod:n,footerSpanMethod:i}=m,{isGroup:o,scrollXLoad:d,scrollYLoad:u,dragCol:s}=b,{visibleColumn:c,fullColumnIdData:v}=C,p=D.value;let x=H.value,h=a,g=!1;return o?h=c:(!(d||u||t)||n||i||(g=!0),l&&(h=c,g)&&(h=e||[]),x=[h]),l||o||d&&s&&2<h.length&&(u=v[s.id])&&(t=u._index,n=h[0],i=h[h.length-1],c=v[n.id],d=v[i.id],c)&&d&&(u=c._index,n=d._index,t<u?(h=[s].concat(h),x=[[s].concat(x[0])].concat(x.slice(1))):n<t&&(h=h.concat([s]),x=[x[0].concat([s])].concat(x.slice(1)))),(0,_vue.h)("div",{ref:E,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:_},[(0,_vue.h)("div",{ref:S,class:"vxe-table--header-inner-wrapper",onScroll(e){J.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(J):(0,_vue.h)("div",{ref:O,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:M,class:"vxe-table--header",xid:_,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:T},h.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("thead",{ref:I},((r,t,e)=>{let n=f.fixedType,{headerRowClassName:i,headerRowStyle:o}=m,{isColLoading:d,isDragColMove:u}=b,s=y.value,c=w.value;return e.map((e,l)=>{var a={$table:J,$rowIndex:l,fixed:n,type:renderType};return!d&&s.drag&&c.animation?(0,_vue.h)(_vue.TransitionGroup,{key:l,name:"vxe-header--col-list"+(u?"":"-disabled"),tag:"tr",class:["vxe-header--row",i?_xeUtils.default.isFunction(i)?i(a):i:""],style:o?_xeUtils.default.isFunction(o)?o(a):o:null},{default:()=>U(r,t,e,l)}):(0,_vue.h)("tr",{key:l,class:["vxe-header--row",i?_xeUtils.default.isFunction(i)?i(a):i:""],style:o?_xeUtils.default.isFunction(o)?o(a):o:null},U(r,t,e,l))})})(o,g,x))]),r&&p.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(J)])])}}});
@@ -37,10 +37,10 @@ var _default = exports.default = {
37
37
  type: [Boolean, String],
38
38
  default: () => getConfig().table.border
39
39
  },
40
- // 单元格是否有边距
40
+ // 已废弃,被 cell-config.padding 替换
41
41
  padding: {
42
42
  type: Boolean,
43
- default: () => getConfig().table.padding
43
+ default: null
44
44
  },
45
45
  // 是否圆角边框
46
46
  round: {
@@ -89,12 +89,18 @@ var _default = exports.default = {
89
89
  type: Boolean,
90
90
  default: () => getConfig().table.highlightHoverRow
91
91
  },
92
- // (即将废弃)是否要高亮当前选中列
92
+ /**
93
+ * (即将废弃)是否要高亮当前选中列
94
+ * @deprecated
95
+ */
93
96
  highlightCurrentColumn: {
94
97
  type: Boolean,
95
98
  default: () => getConfig().table.highlightCurrentColumn
96
99
  },
97
- // (即将废弃)鼠标移到列是否要高亮显示
100
+ /**
101
+ * (即将废弃)鼠标移到列是否要高亮显示
102
+ * @deprecated
103
+ */
98
104
  highlightHoverColumn: {
99
105
  type: Boolean,
100
106
  default: () => getConfig().table.highlightHoverColumn
@@ -186,6 +192,10 @@ var _default = exports.default = {
186
192
  columnConfig: Object,
187
193
  // 单元格配置信息
188
194
  cellConfig: Object,
195
+ // 表头单元格配置信息
196
+ headerCellConfig: Object,
197
+ // 表尾单元格配置信息
198
+ footerCellConfig: Object,
189
199
  // 行配置信息
190
200
  rowConfig: Object,
191
201
  // 已废弃,被 rowDragConfig 替换
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../ui");let getConfig=_ui.VxeUI.getConfig;var _default=exports.default={id:[String,Function],data:Array,height:[Number,String],minHeight:{type:[Number,String],default:()=>getConfig().table.minHeight},maxHeight:[Number,String],resizable:{type:Boolean,default:()=>getConfig().table.resizable},stripe:{type:Boolean,default:()=>getConfig().table.stripe},border:{type:[Boolean,String],default:()=>getConfig().table.border},padding:{type:Boolean,default:()=>getConfig().table.padding},round:{type:Boolean,default:()=>getConfig().table.round},size:{type:String,default:()=>getConfig().table.size||getConfig().size},fit:{type:Boolean,default:()=>getConfig().table.fit},loading:Boolean,align:{type:String,default:()=>getConfig().table.align},headerAlign:{type:String,default:()=>getConfig().table.headerAlign},footerAlign:{type:String,default:()=>getConfig().table.footerAlign},showHeader:{type:Boolean,default:()=>getConfig().table.showHeader},highlightCurrentRow:{type:Boolean,default:()=>getConfig().table.highlightCurrentRow},highlightHoverRow:{type:Boolean,default:()=>getConfig().table.highlightHoverRow},highlightCurrentColumn:{type:Boolean,default:()=>getConfig().table.highlightCurrentColumn},highlightHoverColumn:{type:Boolean,default:()=>getConfig().table.highlightHoverColumn},highlightCell:Boolean,showFooter:Boolean,footerData:Array,footerMethod:Function,rowClassName:[String,Function],cellClassName:[String,Function],headerRowClassName:[String,Function],headerCellClassName:[String,Function],footerRowClassName:[String,Function],footerCellClassName:[String,Function],cellStyle:[Object,Function],headerCellStyle:[Object,Function],footerCellStyle:[Object,Function],rowStyle:[Object,Function],headerRowStyle:[Object,Function],footerRowStyle:[Object,Function],mergeCells:Array,mergeFooterItems:Array,spanMethod:Function,footerSpanMethod:Function,showOverflow:{type:[Boolean,String],default:()=>getConfig().table.showOverflow},showHeaderOverflow:{type:[Boolean,String],default:()=>getConfig().table.showHeaderOverflow},showFooterOverflow:{type:[Boolean,String],default:()=>getConfig().table.showFooterOverflow},columnKey:Boolean,rowKey:Boolean,rowId:{type:String,default:()=>getConfig().table.rowId},zIndex:Number,emptyText:{type:String,default:()=>getConfig().table.emptyText},keepSource:{type:Boolean,default:()=>getConfig().table.keepSource},autoResize:{type:Boolean,default:()=>getConfig().table.autoResize},syncResize:[Boolean,String,Number],resizeConfig:Object,columnConfig:Object,cellConfig:Object,rowConfig:Object,dragConfig:Object,rowDragConfig:Object,columnDragConfig:Object,resizableConfig:Object,seqConfig:Object,sortConfig:Object,filterConfig:Object,radioConfig:Object,checkboxConfig:Object,tooltipConfig:Object,exportConfig:Object,importConfig:Object,printConfig:Object,expandConfig:Object,treeConfig:Object,menuConfig:Object,mouseConfig:Object,areaConfig:Object,keyboardConfig:Object,clipConfig:Object,fnrConfig:Object,editConfig:Object,validConfig:Object,editRules:Object,loadingConfig:Object,emptyRender:Object,customConfig:Object,scrollX:Object,scrollY:Object,virtualXConfig:Object,virtualYConfig:Object,scrollbarConfig:Object,animat:{type:Boolean,default:()=>getConfig().table.animat},delayHover:{type:Number,default:()=>getConfig().table.delayHover},params:Object};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../ui");let getConfig=_ui.VxeUI.getConfig;var _default=exports.default={id:[String,Function],data:Array,height:[Number,String],minHeight:{type:[Number,String],default:()=>getConfig().table.minHeight},maxHeight:[Number,String],resizable:{type:Boolean,default:()=>getConfig().table.resizable},stripe:{type:Boolean,default:()=>getConfig().table.stripe},border:{type:[Boolean,String],default:()=>getConfig().table.border},padding:{type:Boolean,default:null},round:{type:Boolean,default:()=>getConfig().table.round},size:{type:String,default:()=>getConfig().table.size||getConfig().size},fit:{type:Boolean,default:()=>getConfig().table.fit},loading:Boolean,align:{type:String,default:()=>getConfig().table.align},headerAlign:{type:String,default:()=>getConfig().table.headerAlign},footerAlign:{type:String,default:()=>getConfig().table.footerAlign},showHeader:{type:Boolean,default:()=>getConfig().table.showHeader},highlightCurrentRow:{type:Boolean,default:()=>getConfig().table.highlightCurrentRow},highlightHoverRow:{type:Boolean,default:()=>getConfig().table.highlightHoverRow},highlightCurrentColumn:{type:Boolean,default:()=>getConfig().table.highlightCurrentColumn},highlightHoverColumn:{type:Boolean,default:()=>getConfig().table.highlightHoverColumn},highlightCell:Boolean,showFooter:Boolean,footerData:Array,footerMethod:Function,rowClassName:[String,Function],cellClassName:[String,Function],headerRowClassName:[String,Function],headerCellClassName:[String,Function],footerRowClassName:[String,Function],footerCellClassName:[String,Function],cellStyle:[Object,Function],headerCellStyle:[Object,Function],footerCellStyle:[Object,Function],rowStyle:[Object,Function],headerRowStyle:[Object,Function],footerRowStyle:[Object,Function],mergeCells:Array,mergeFooterItems:Array,spanMethod:Function,footerSpanMethod:Function,showOverflow:{type:[Boolean,String],default:()=>getConfig().table.showOverflow},showHeaderOverflow:{type:[Boolean,String],default:()=>getConfig().table.showHeaderOverflow},showFooterOverflow:{type:[Boolean,String],default:()=>getConfig().table.showFooterOverflow},columnKey:Boolean,rowKey:Boolean,rowId:{type:String,default:()=>getConfig().table.rowId},zIndex:Number,emptyText:{type:String,default:()=>getConfig().table.emptyText},keepSource:{type:Boolean,default:()=>getConfig().table.keepSource},autoResize:{type:Boolean,default:()=>getConfig().table.autoResize},syncResize:[Boolean,String,Number],resizeConfig:Object,columnConfig:Object,cellConfig:Object,headerCellConfig:Object,footerCellConfig:Object,rowConfig:Object,dragConfig:Object,rowDragConfig:Object,columnDragConfig:Object,resizableConfig:Object,seqConfig:Object,sortConfig:Object,filterConfig:Object,radioConfig:Object,checkboxConfig:Object,tooltipConfig:Object,exportConfig:Object,importConfig:Object,printConfig:Object,expandConfig:Object,treeConfig:Object,menuConfig:Object,mouseConfig:Object,areaConfig:Object,keyboardConfig:Object,clipConfig:Object,fnrConfig:Object,editConfig:Object,validConfig:Object,editRules:Object,loadingConfig:Object,emptyRender:Object,customConfig:Object,scrollX:Object,scrollY:Object,virtualXConfig:Object,virtualYConfig:Object,scrollbarConfig:Object,animat:{type:Boolean,default:()=>getConfig().table.animat},delayHover:{type:Number,default:()=>getConfig().table.delayHover},params:Object};