vxe-table 3.18.0-beta.7 → 3.18.0

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 (147) hide show
  1. package/es/locale/lang/ar-EG.js +30 -0
  2. package/es/locale/lang/de-DE.js +30 -0
  3. package/es/locale/lang/en-US.js +42 -12
  4. package/es/locale/lang/es-ES.js +30 -0
  5. package/es/locale/lang/fr-FR.js +30 -0
  6. package/es/locale/lang/hu-HU.js +30 -0
  7. package/es/locale/lang/hy-AM.js +30 -0
  8. package/es/locale/lang/id-ID.js +30 -0
  9. package/es/locale/lang/it-IT.js +30 -0
  10. package/es/locale/lang/ja-JP.js +30 -0
  11. package/es/locale/lang/ko-KR.js +30 -0
  12. package/es/locale/lang/ms-MY.js +30 -0
  13. package/es/locale/lang/nb-NO.js +30 -0
  14. package/es/locale/lang/pt-BR.js +30 -0
  15. package/es/locale/lang/ru-RU.js +30 -0
  16. package/es/locale/lang/th-TH.js +30 -0
  17. package/es/locale/lang/ug-CN.js +30 -0
  18. package/es/locale/lang/uk-UA.js +30 -0
  19. package/es/locale/lang/uz-UZ.js +30 -0
  20. package/es/locale/lang/vi-VN.js +30 -0
  21. package/es/locale/lang/zh-CHT.js +30 -0
  22. package/es/locale/lang/zh-CN.js +32 -0
  23. package/es/style.css +1 -1
  24. package/es/table/module/keyboard/mixin.js +175 -172
  25. package/es/table/src/footer.js +2 -2
  26. package/es/table/src/header.js +2 -2
  27. package/es/table/src/table.js +22 -3
  28. package/es/table/src/util.js +1 -1
  29. package/es/ui/index.js +1 -1
  30. package/es/ui/src/log.js +1 -1
  31. package/lib/index.umd.js +244 -192
  32. package/lib/index.umd.min.js +1 -1
  33. package/lib/locale/lang/ar-EG.js +30 -0
  34. package/lib/locale/lang/ar-EG.min.js +1 -1
  35. package/lib/locale/lang/ar-EG.umd.js +30 -0
  36. package/lib/locale/lang/de-DE.js +30 -0
  37. package/lib/locale/lang/de-DE.min.js +1 -1
  38. package/lib/locale/lang/de-DE.umd.js +30 -0
  39. package/lib/locale/lang/en-US.js +42 -12
  40. package/lib/locale/lang/en-US.min.js +1 -1
  41. package/lib/locale/lang/en-US.umd.js +42 -12
  42. package/lib/locale/lang/es-ES.js +30 -0
  43. package/lib/locale/lang/es-ES.min.js +1 -1
  44. package/lib/locale/lang/es-ES.umd.js +30 -0
  45. package/lib/locale/lang/fr-FR.js +30 -0
  46. package/lib/locale/lang/fr-FR.min.js +1 -1
  47. package/lib/locale/lang/fr-FR.umd.js +30 -0
  48. package/lib/locale/lang/hu-HU.js +30 -0
  49. package/lib/locale/lang/hu-HU.min.js +1 -1
  50. package/lib/locale/lang/hu-HU.umd.js +30 -0
  51. package/lib/locale/lang/hy-AM.js +30 -0
  52. package/lib/locale/lang/hy-AM.min.js +1 -1
  53. package/lib/locale/lang/hy-AM.umd.js +30 -0
  54. package/lib/locale/lang/id-ID.js +30 -0
  55. package/lib/locale/lang/id-ID.min.js +1 -1
  56. package/lib/locale/lang/id-ID.umd.js +30 -0
  57. package/lib/locale/lang/it-IT.js +30 -0
  58. package/lib/locale/lang/it-IT.min.js +1 -1
  59. package/lib/locale/lang/it-IT.umd.js +30 -0
  60. package/lib/locale/lang/ja-JP.js +30 -0
  61. package/lib/locale/lang/ja-JP.min.js +1 -1
  62. package/lib/locale/lang/ja-JP.umd.js +30 -0
  63. package/lib/locale/lang/ko-KR.js +30 -0
  64. package/lib/locale/lang/ko-KR.min.js +1 -1
  65. package/lib/locale/lang/ko-KR.umd.js +30 -0
  66. package/lib/locale/lang/ms-MY.js +30 -0
  67. package/lib/locale/lang/ms-MY.min.js +1 -1
  68. package/lib/locale/lang/ms-MY.umd.js +30 -0
  69. package/lib/locale/lang/nb-NO.js +30 -0
  70. package/lib/locale/lang/nb-NO.min.js +1 -1
  71. package/lib/locale/lang/nb-NO.umd.js +30 -0
  72. package/lib/locale/lang/pt-BR.js +30 -0
  73. package/lib/locale/lang/pt-BR.min.js +1 -1
  74. package/lib/locale/lang/pt-BR.umd.js +30 -0
  75. package/lib/locale/lang/ru-RU.js +30 -0
  76. package/lib/locale/lang/ru-RU.min.js +1 -1
  77. package/lib/locale/lang/ru-RU.umd.js +30 -0
  78. package/lib/locale/lang/th-TH.js +30 -0
  79. package/lib/locale/lang/th-TH.min.js +1 -1
  80. package/lib/locale/lang/th-TH.umd.js +30 -0
  81. package/lib/locale/lang/ug-CN.js +30 -0
  82. package/lib/locale/lang/ug-CN.min.js +1 -1
  83. package/lib/locale/lang/ug-CN.umd.js +30 -0
  84. package/lib/locale/lang/uk-UA.js +30 -0
  85. package/lib/locale/lang/uk-UA.min.js +1 -1
  86. package/lib/locale/lang/uk-UA.umd.js +30 -0
  87. package/lib/locale/lang/uz-UZ.js +30 -0
  88. package/lib/locale/lang/uz-UZ.min.js +1 -1
  89. package/lib/locale/lang/uz-UZ.umd.js +30 -0
  90. package/lib/locale/lang/vi-VN.js +30 -0
  91. package/lib/locale/lang/vi-VN.min.js +1 -1
  92. package/lib/locale/lang/vi-VN.umd.js +30 -0
  93. package/lib/locale/lang/zh-CHT.js +30 -0
  94. package/lib/locale/lang/zh-CHT.min.js +1 -1
  95. package/lib/locale/lang/zh-CHT.umd.js +30 -0
  96. package/lib/locale/lang/zh-CN.js +32 -0
  97. package/lib/locale/lang/zh-CN.min.js +1 -1
  98. package/lib/locale/lang/zh-CN.umd.js +32 -0
  99. package/lib/style.css +1 -1
  100. package/lib/table/module/keyboard/mixin.js +184 -185
  101. package/lib/table/module/keyboard/mixin.min.js +1 -1
  102. package/lib/table/src/footer.js +1 -1
  103. package/lib/table/src/footer.min.js +1 -1
  104. package/lib/table/src/header.js +1 -1
  105. package/lib/table/src/header.min.js +1 -1
  106. package/lib/table/src/table.js +23 -2
  107. package/lib/table/src/table.min.js +1 -1
  108. package/lib/table/src/util.js +2 -2
  109. package/lib/table/src/util.min.js +1 -1
  110. package/lib/ui/index.js +1 -1
  111. package/lib/ui/index.min.js +1 -1
  112. package/lib/ui/src/log.js +1 -1
  113. package/lib/ui/src/log.min.js +1 -1
  114. package/package.json +1 -1
  115. package/packages/locale/lang/ar-EG.ts +30 -0
  116. package/packages/locale/lang/de-DE.ts +30 -0
  117. package/packages/locale/lang/en-US.ts +42 -12
  118. package/packages/locale/lang/es-ES.ts +30 -0
  119. package/packages/locale/lang/fr-FR.ts +30 -0
  120. package/packages/locale/lang/hu-HU.ts +30 -0
  121. package/packages/locale/lang/hy-AM.ts +30 -0
  122. package/packages/locale/lang/id-ID.ts +30 -0
  123. package/packages/locale/lang/it-IT.ts +30 -0
  124. package/packages/locale/lang/ja-JP.ts +30 -0
  125. package/packages/locale/lang/ko-KR.ts +30 -0
  126. package/packages/locale/lang/ms-MY.ts +30 -0
  127. package/packages/locale/lang/nb-NO.ts +30 -0
  128. package/packages/locale/lang/pt-BR.ts +30 -0
  129. package/packages/locale/lang/ru-RU.ts +30 -0
  130. package/packages/locale/lang/th-TH.ts +30 -0
  131. package/packages/locale/lang/ug-CN.ts +30 -0
  132. package/packages/locale/lang/uk-UA.ts +30 -0
  133. package/packages/locale/lang/uz-UZ.ts +30 -0
  134. package/packages/locale/lang/vi-VN.ts +30 -0
  135. package/packages/locale/lang/zh-CHT.ts +30 -0
  136. package/packages/locale/lang/zh-CN.ts +32 -0
  137. package/packages/table/module/keyboard/mixin.ts +169 -165
  138. package/packages/table/src/footer.ts +2 -2
  139. package/packages/table/src/header.ts +2 -2
  140. package/packages/table/src/table.ts +23 -3
  141. package/packages/table/src/util.ts +1 -1
  142. /package/es/{iconfont.1755650997091.ttf → iconfont.1756083626568.ttf} +0 -0
  143. /package/es/{iconfont.1755650997091.woff → iconfont.1756083626568.woff} +0 -0
  144. /package/es/{iconfont.1755650997091.woff2 → iconfont.1756083626568.woff2} +0 -0
  145. /package/lib/{iconfont.1755650997091.ttf → iconfont.1756083626568.ttf} +0 -0
  146. /package/lib/{iconfont.1755650997091.woff → iconfont.1756083626568.woff} +0 -0
  147. /package/lib/{iconfont.1755650997091.woff2 → iconfont.1756083626568.woff2} +0 -0
@@ -145,6 +145,182 @@ function handleMoveSelected($xeTable, evnt, args, isLeftArrow, isUpArrow, isRigh
145
145
  });
146
146
  return params;
147
147
  }
148
+ function handleCheckboxRangeEvent($xeTable, evnt, params) {
149
+ const internalData = $xeTable;
150
+ const {
151
+ elemStore
152
+ } = internalData;
153
+ const bodyScrollElem = (0, _util.getRefElem)(elemStore['main-body-scroll']);
154
+ const leftScrollElem = (0, _util.getRefElem)(elemStore['left-body-scroll']);
155
+ const rightScrollElem = (0, _util.getRefElem)(elemStore['right-body-scroll']);
156
+ const {
157
+ column,
158
+ cell
159
+ } = params;
160
+ if (column.type === 'checkbox') {
161
+ let bodyWrapperElem = bodyScrollElem;
162
+ if (leftScrollElem && column.fixed === 'left') {
163
+ bodyWrapperElem = leftScrollElem;
164
+ } else if (rightScrollElem && column.fixed === 'right') {
165
+ bodyWrapperElem = rightScrollElem;
166
+ }
167
+ if (!bodyWrapperElem) {
168
+ return;
169
+ }
170
+ const el = $xeTable.$refs.refElem;
171
+ const disX = evnt.clientX;
172
+ const disY = evnt.clientY;
173
+ const checkboxRangeElem = bodyWrapperElem.querySelector('.vxe-table--checkbox-range');
174
+ const trElem = cell.parentNode;
175
+ const selectRecords = $xeTable.getCheckboxRecords();
176
+ let lastRangeRows = [];
177
+ const marginSize = 1;
178
+ const offsetRest = getTargetOffset(evnt.target, bodyWrapperElem);
179
+ const startTop = offsetRest.offsetTop + evnt.offsetY;
180
+ const startLeft = offsetRest.offsetLeft + evnt.offsetX;
181
+ const startScrollTop = bodyWrapperElem.scrollTop;
182
+ const rowHeight = trElem.offsetHeight;
183
+ const trRect = trElem.getBoundingClientRect();
184
+ const offsetClientTop = disY - trRect.y;
185
+ let mouseScrollTimeout = null;
186
+ let isMouseScrollDown = false;
187
+ let mouseScrollSpaceSize = 1;
188
+ const triggerEvent = (type, evnt) => {
189
+ $xeTable.dispatchEvent(`checkbox-range-${type}`, {
190
+ records: () => $xeTable.getCheckboxRecords(),
191
+ reserves: () => $xeTable.getCheckboxReserveRecords()
192
+ }, evnt);
193
+ };
194
+ const handleChecked = evnt => {
195
+ const {
196
+ clientX,
197
+ clientY
198
+ } = evnt;
199
+ const offsetLeft = clientX - disX;
200
+ const offsetTop = clientY - disY + (bodyWrapperElem.scrollTop - startScrollTop);
201
+ let rangeHeight = Math.abs(offsetTop);
202
+ let rangeWidth = Math.abs(offsetLeft);
203
+ let rangeTop = startTop;
204
+ let rangeLeft = startLeft;
205
+ if (offsetTop < marginSize) {
206
+ // 向上
207
+ rangeTop += offsetTop;
208
+ if (rangeTop < marginSize) {
209
+ rangeTop = marginSize;
210
+ rangeHeight = startTop;
211
+ }
212
+ } else {
213
+ // 向下
214
+ rangeHeight = Math.min(rangeHeight, bodyWrapperElem.scrollHeight - startTop - marginSize);
215
+ }
216
+ if (offsetLeft < marginSize) {
217
+ // 向左
218
+ rangeLeft += offsetLeft;
219
+ if (rangeWidth > startLeft) {
220
+ rangeLeft = marginSize;
221
+ rangeWidth = startLeft;
222
+ }
223
+ } else {
224
+ // 向右
225
+ rangeWidth = Math.min(rangeWidth, bodyWrapperElem.clientWidth - startLeft - marginSize);
226
+ }
227
+ checkboxRangeElem.style.height = `${rangeHeight}px`;
228
+ checkboxRangeElem.style.width = `${rangeWidth}px`;
229
+ checkboxRangeElem.style.left = `${rangeLeft}px`;
230
+ checkboxRangeElem.style.top = `${rangeTop}px`;
231
+ checkboxRangeElem.style.display = 'block';
232
+ const rangeRows = getCheckboxRangeRows($xeTable, evnt, params, trElem, trRect, offsetClientTop, offsetTop < marginSize ? -rangeHeight : rangeHeight);
233
+ // 至少滑动 10px 才能有效匹配
234
+ if (rangeHeight > 10 && rangeRows.length !== lastRangeRows.length) {
235
+ const isControlKey = (0, _dom.hasControlKey)(evnt);
236
+ lastRangeRows = rangeRows;
237
+ if (isControlKey) {
238
+ rangeRows.forEach(row => {
239
+ $xeTable.handleBatchSelectRows([row], selectRecords.indexOf(row) === -1);
240
+ });
241
+ } else {
242
+ $xeTable.setAllCheckboxRow(false);
243
+ $xeTable.handleCheckedCheckboxRow(rangeRows, true, false);
244
+ }
245
+ triggerEvent('change', evnt);
246
+ }
247
+ };
248
+ // 停止鼠标滚动
249
+ const stopMouseScroll = () => {
250
+ clearTimeout(mouseScrollTimeout);
251
+ mouseScrollTimeout = null;
252
+ };
253
+ // 开始鼠标滚动
254
+ const startMouseScroll = evnt => {
255
+ stopMouseScroll();
256
+ mouseScrollTimeout = setTimeout(() => {
257
+ if (mouseScrollTimeout) {
258
+ const {
259
+ scrollLeft,
260
+ scrollTop,
261
+ clientHeight,
262
+ scrollHeight
263
+ } = bodyWrapperElem;
264
+ const topSize = Math.ceil(mouseScrollSpaceSize * 50 / rowHeight);
265
+ if (isMouseScrollDown) {
266
+ if (scrollTop + clientHeight < scrollHeight) {
267
+ $xeTable.scrollTo(scrollLeft, scrollTop + topSize);
268
+ startMouseScroll(evnt);
269
+ handleChecked(evnt);
270
+ } else {
271
+ stopMouseScroll();
272
+ }
273
+ } else {
274
+ if (scrollTop) {
275
+ $xeTable.scrollTo(scrollLeft, scrollTop - topSize);
276
+ startMouseScroll(evnt);
277
+ handleChecked(evnt);
278
+ } else {
279
+ stopMouseScroll();
280
+ }
281
+ }
282
+ }
283
+ }, 50);
284
+ };
285
+ (0, _dom.addClass)(el, 'drag--range');
286
+ document.onmousemove = evnt => {
287
+ evnt.preventDefault();
288
+ evnt.stopPropagation();
289
+ const {
290
+ clientY
291
+ } = evnt;
292
+ const {
293
+ boundingTop
294
+ } = (0, _dom.getAbsolutePos)(bodyWrapperElem);
295
+ // 如果超过可视区,触发滚动
296
+ if (clientY < boundingTop) {
297
+ isMouseScrollDown = false;
298
+ mouseScrollSpaceSize = boundingTop - clientY;
299
+ if (!mouseScrollTimeout) {
300
+ startMouseScroll(evnt);
301
+ }
302
+ } else if (clientY > boundingTop + bodyWrapperElem.clientHeight) {
303
+ isMouseScrollDown = true;
304
+ mouseScrollSpaceSize = clientY - boundingTop - bodyWrapperElem.clientHeight;
305
+ if (!mouseScrollTimeout) {
306
+ startMouseScroll(evnt);
307
+ }
308
+ } else if (mouseScrollTimeout) {
309
+ stopMouseScroll();
310
+ }
311
+ handleChecked(evnt);
312
+ };
313
+ document.onmouseup = evnt => {
314
+ stopMouseScroll();
315
+ (0, _dom.removeClass)(el, 'drag--range');
316
+ checkboxRangeElem.removeAttribute('style');
317
+ document.onmousemove = null;
318
+ document.onmouseup = null;
319
+ triggerEvent('end', evnt);
320
+ };
321
+ triggerEvent('start', evnt);
322
+ }
323
+ }
148
324
  var _default = exports.default = {
149
325
  methods: {
150
326
  // 处理 Tab 键移动
@@ -375,204 +551,27 @@ var _default = exports.default = {
375
551
  },
376
552
  handleCellMousedownEvent(evnt, params) {
377
553
  const $xeTable = this;
554
+ const props = $xeTable;
378
555
  const {
379
556
  editConfig,
380
- editOpts,
381
- handleSelected,
382
557
  checkboxConfig,
383
- checkboxOpts,
384
- mouseConfig,
385
- mouseOpts
386
- } = this;
558
+ mouseConfig
559
+ } = props;
560
+ const checkboxOpts = $xeTable.computeCheckboxOpts;
561
+ const mouseOpts = $xeTable.computeMouseOpts;
562
+ const editOpts = $xeTable.computeEditOpts;
387
563
  if (mouseConfig && mouseOpts.area && $xeTable.triggerCellAreaModnEvent) {
388
564
  return $xeTable.triggerCellAreaModnEvent(evnt, params);
389
565
  } else {
390
566
  if (checkboxConfig && checkboxOpts.range) {
391
- this.handleCheckboxRangeEvent(evnt, params);
567
+ handleCheckboxRangeEvent($xeTable, evnt, params);
392
568
  }
393
569
  if (mouseConfig && mouseOpts.selected) {
394
570
  if (!editConfig || editOpts.mode === 'cell') {
395
- handleSelected(params, evnt);
571
+ $xeTable.handleSelected(params, evnt);
396
572
  }
397
573
  }
398
574
  }
399
- },
400
- handleCheckboxRangeEvent(evnt, params) {
401
- const $xeTable = this;
402
- const internalData = $xeTable;
403
- const {
404
- elemStore
405
- } = internalData;
406
- const bodyScrollElem = (0, _util.getRefElem)(elemStore['main-body-scroll']);
407
- const leftScrollElem = (0, _util.getRefElem)(elemStore['left-body-scroll']);
408
- const rightScrollElem = (0, _util.getRefElem)(elemStore['right-body-scroll']);
409
- const {
410
- column,
411
- cell
412
- } = params;
413
- if (column.type === 'checkbox') {
414
- let bodyWrapperElem = bodyScrollElem;
415
- if (leftScrollElem && column.fixed === 'left') {
416
- bodyWrapperElem = leftScrollElem;
417
- } else if (rightScrollElem && column.fixed === 'right') {
418
- bodyWrapperElem = rightScrollElem;
419
- }
420
- if (!bodyWrapperElem) {
421
- return;
422
- }
423
- const el = $xeTable.$refs.refElem;
424
- const disX = evnt.clientX;
425
- const disY = evnt.clientY;
426
- const checkboxRangeElem = bodyWrapperElem.querySelector('.vxe-table--checkbox-range');
427
- const trElem = cell.parentNode;
428
- const selectRecords = this.getCheckboxRecords();
429
- let lastRangeRows = [];
430
- const marginSize = 1;
431
- const offsetRest = getTargetOffset(evnt.target, bodyWrapperElem);
432
- const startTop = offsetRest.offsetTop + evnt.offsetY;
433
- const startLeft = offsetRest.offsetLeft + evnt.offsetX;
434
- const startScrollTop = bodyWrapperElem.scrollTop;
435
- const rowHeight = trElem.offsetHeight;
436
- const trRect = trElem.getBoundingClientRect();
437
- const offsetClientTop = disY - trRect.y;
438
- let mouseScrollTimeout = null;
439
- let isMouseScrollDown = false;
440
- let mouseScrollSpaceSize = 1;
441
- const triggerEvent = (type, evnt) => {
442
- this.emitEvent(`checkbox-range-${type}`, {
443
- records: () => this.getCheckboxRecords(),
444
- reserves: () => this.getCheckboxReserveRecords()
445
- }, evnt);
446
- };
447
- const handleChecked = evnt => {
448
- const {
449
- clientX,
450
- clientY
451
- } = evnt;
452
- const offsetLeft = clientX - disX;
453
- const offsetTop = clientY - disY + (bodyWrapperElem.scrollTop - startScrollTop);
454
- let rangeHeight = Math.abs(offsetTop);
455
- let rangeWidth = Math.abs(offsetLeft);
456
- let rangeTop = startTop;
457
- let rangeLeft = startLeft;
458
- if (offsetTop < marginSize) {
459
- // 向上
460
- rangeTop += offsetTop;
461
- if (rangeTop < marginSize) {
462
- rangeTop = marginSize;
463
- rangeHeight = startTop;
464
- }
465
- } else {
466
- // 向下
467
- rangeHeight = Math.min(rangeHeight, bodyWrapperElem.scrollHeight - startTop - marginSize);
468
- }
469
- if (offsetLeft < marginSize) {
470
- // 向左
471
- rangeLeft += offsetLeft;
472
- if (rangeWidth > startLeft) {
473
- rangeLeft = marginSize;
474
- rangeWidth = startLeft;
475
- }
476
- } else {
477
- // 向右
478
- rangeWidth = Math.min(rangeWidth, bodyWrapperElem.clientWidth - startLeft - marginSize);
479
- }
480
- checkboxRangeElem.style.height = `${rangeHeight}px`;
481
- checkboxRangeElem.style.width = `${rangeWidth}px`;
482
- checkboxRangeElem.style.left = `${rangeLeft}px`;
483
- checkboxRangeElem.style.top = `${rangeTop}px`;
484
- checkboxRangeElem.style.display = 'block';
485
- const rangeRows = getCheckboxRangeRows(this, evnt, params, trElem, trRect, offsetClientTop, offsetTop < marginSize ? -rangeHeight : rangeHeight);
486
- // 至少滑动 10px 才能有效匹配
487
- if (rangeHeight > 10 && rangeRows.length !== lastRangeRows.length) {
488
- const isControlKey = (0, _dom.hasControlKey)(evnt);
489
- lastRangeRows = rangeRows;
490
- if (isControlKey) {
491
- rangeRows.forEach(row => {
492
- $xeTable.handleBatchSelectRows([row], selectRecords.indexOf(row) === -1);
493
- });
494
- } else {
495
- this.setAllCheckboxRow(false);
496
- this.handleCheckedCheckboxRow(rangeRows, true, false);
497
- }
498
- triggerEvent('change', evnt);
499
- }
500
- };
501
- // 停止鼠标滚动
502
- const stopMouseScroll = () => {
503
- clearTimeout(mouseScrollTimeout);
504
- mouseScrollTimeout = null;
505
- };
506
- // 开始鼠标滚动
507
- const startMouseScroll = evnt => {
508
- stopMouseScroll();
509
- mouseScrollTimeout = setTimeout(() => {
510
- if (mouseScrollTimeout) {
511
- const {
512
- scrollLeft,
513
- scrollTop,
514
- clientHeight,
515
- scrollHeight
516
- } = bodyWrapperElem;
517
- const topSize = Math.ceil(mouseScrollSpaceSize * 50 / rowHeight);
518
- if (isMouseScrollDown) {
519
- if (scrollTop + clientHeight < scrollHeight) {
520
- this.scrollTo(scrollLeft, scrollTop + topSize);
521
- startMouseScroll(evnt);
522
- handleChecked(evnt);
523
- } else {
524
- stopMouseScroll();
525
- }
526
- } else {
527
- if (scrollTop) {
528
- this.scrollTo(scrollLeft, scrollTop - topSize);
529
- startMouseScroll(evnt);
530
- handleChecked(evnt);
531
- } else {
532
- stopMouseScroll();
533
- }
534
- }
535
- }
536
- }, 50);
537
- };
538
- (0, _dom.addClass)(el, 'drag--range');
539
- document.onmousemove = evnt => {
540
- evnt.preventDefault();
541
- evnt.stopPropagation();
542
- const {
543
- clientY
544
- } = evnt;
545
- const {
546
- boundingTop
547
- } = (0, _dom.getAbsolutePos)(bodyWrapperElem);
548
- // 如果超过可视区,触发滚动
549
- if (clientY < boundingTop) {
550
- isMouseScrollDown = false;
551
- mouseScrollSpaceSize = boundingTop - clientY;
552
- if (!mouseScrollTimeout) {
553
- startMouseScroll(evnt);
554
- }
555
- } else if (clientY > boundingTop + bodyWrapperElem.clientHeight) {
556
- isMouseScrollDown = true;
557
- mouseScrollSpaceSize = clientY - boundingTop - bodyWrapperElem.clientHeight;
558
- if (!mouseScrollTimeout) {
559
- startMouseScroll(evnt);
560
- }
561
- } else if (mouseScrollTimeout) {
562
- stopMouseScroll();
563
- }
564
- handleChecked(evnt);
565
- };
566
- document.onmouseup = evnt => {
567
- stopMouseScroll();
568
- (0, _dom.removeClass)(el, 'drag--range');
569
- checkboxRangeElem.removeAttribute('style');
570
- document.onmousemove = null;
571
- document.onmouseup = null;
572
- triggerEvent('end', evnt);
573
- };
574
- triggerEvent('start', evnt);
575
- }
576
575
  }
577
576
  }
578
577
  };
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let browseObj=_xeUtils.default.browse();function getTargetOffset(e,t){let l=0,o=0;var r,n,i=!browseObj.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(i&&(r=getComputedStyle(e),l-=_xeUtils.default.toNumber(r.paddingTop),o-=_xeUtils.default.toNumber(r.paddingLeft));e&&e!==t;)l+=e.offsetTop,o+=e.offsetLeft,e=e.offsetParent,i&&(n=getComputedStyle(e),l-=_xeUtils.default.toNumber(n.paddingTop),o-=_xeUtils.default.toNumber(n.paddingLeft));return{offsetTop:l,offsetLeft:o}}function getCheckboxRangeRows(t,e,l,o,r,n,i){var u=t.showOverflow,{fullAllDataRowIdData:s,isResizeCellHeight:c}=t,d=t.computeRowOpts,h=t.computeCellOpts,a=t.computeDefaultRowHeight,l=l.row;let g=0,m=[],f=0;var C=0<i,p=t.scrollYLoad,w=t.afterFullData;if(f=C?n+i:r.height-n+Math.abs(i),p){r=t.getVTRowIndex(l);if(!(c||h.height||d.height)&&u)m=C?w.slice(r,r+Math.ceil(f/a)):w.slice(r-Math.floor(f/a),r+1);else if(C)for(let e=r;e<w.length;e++){var v=w[e],x=s[t.getRowid(v)]||{};if(g+=x.resizeHeight||h.height||d.height||x.height||a,m.push(v),g>f)return m}else for(let e=r;0<=e;e--){var R=w[e],b=s[t.getRowid(R)]||{};if(g+=b.resizeHeight||h.height||d.height||b.height||a,m.push(R),g>f)return m}}else for(var T=C?"next":"previous";o&&g<f;){var O=t.getRowNode(o);O&&(m.push(O.item),g+=o.offsetHeight,o=o[T+"ElementSibling"])}return m}function handleMoveSelected(e,t,l,o,r,n,i){var{afterFullData:u,visibleColumn:s}=e;let c=Object.assign({},l);var l=e.getVTRowIndex(c.row),d=e.getVTColumnIndex(c.column);return t.preventDefault(),r&&0<l?(c.rowIndex=l-1,c.row=u[c.rowIndex]):i&&l<u.length-1?(c.rowIndex=l+1,c.row=u[c.rowIndex]):o&&d?(c.columnIndex=d-1,c.column=s[c.columnIndex]):n&&d<s.length-1&&(c.columnIndex=d+1,c.column=s[c.columnIndex]),e.scrollToRow(c.row,c.column).then(()=>{c.cell=e.getCellElement(c.row,c.column),e.handleSelected(c,t)}),c}var _default=exports.default={methods:{moveTabSelected(e,t,l){let o=this;var r=o.editConfig,{afterFullData:n,visibleColumn:i}=o,u=o.computeEditOpts,s=o.computeRowOpts,c=o.computeCurrentRowOpts,d=o.computeColumnOpts,h=o.computeCurrentColumnOpts;let a,g,m,f=Object.assign({},e);var e=o.getVTRowIndex(f.row),C=o.getVTColumnIndex(f.column),t=(l.preventDefault(),t?C<=0?0<e&&(g=e-1,a=n[g],m=i.length-1):m=C-1:C>=i.length-1?e<n.length-1&&(g=e+1,a=n[g],m=0):m=C+1,i[m]);t&&(a?(f.rowIndex=g,f.row=a):f.rowIndex=e,f.columnIndex=m,f.column=t,f.cell=o.getCellElement(f.row,f.column),s.isCurrent&&c.isFollowSelected&&o.triggerCurrentRowEvent(l,f),d.isCurrent&&h.isFollowSelected&&o.triggerCurrentColumnEvent(l,f),r?"click"!==u.trigger&&"dblclick"!==u.trigger||("row"===u.mode?o.handleEdit(f,l):o.scrollToRow(f.row,f.column).then(()=>{o.handleSelected(f,l)})):o.scrollToRow(f.row,f.column).then(()=>{o.handleSelected(f,l)}))},moveCurrentRow(e,t,l){let o=this;var r=o,n=o,i=o,r=r.treeConfig;let u=n.currentRow;var n=i.afterFullData,i=o.computeTreeOpts,i=i.children||i.childrenField;let s;if(u?r?({index:r,items:i}=_xeUtils.default.findTree(n,e=>e===u,{children:i}),e&&0<r?s=i[r-1]:t&&r<i.length-1&&(s=i[r+1])):(i=o.getVTRowIndex(u),e&&0<i?s=n[i-1]:t&&i<n.length-1&&(s=n[i+1])):s=n[0],s){l.preventDefault();let e={$table:o,row:s,rowIndex:o.getRowIndex(s),$rowIndex:o.getVMRowIndex(s)};o.scrollToRow(s).then(()=>o.triggerCurrentRowEvent(l,e))}},moveCurrentColumn(e,t,l){let o=this;var r=o.currentColumn,n=o.visibleColumn;let i=null;if(r?(r=o.getVTColumnIndex(r),e&&0<r?i=n[r-1]:t&&r<n.length-1&&(i=n[r+1])):i=n[0],i){l.preventDefault();let e={$table:o,column:i,columnIndex:o.getColumnIndex(i),$columnIndex:o.getVMColumnIndex(i)};o.scrollToColumn(i).then(()=>o.triggerCurrentColumnEvent(l,e))}},moveArrowSelected(e,t,l,o,r,n){var i=this,{highlightCurrentRow:u,highlightCurrentColumn:s}=i,c=i.computeRowOpts,d=i.computeCurrentRowOpts,h=i.computeColumnOpts,a=i.computeCurrentColumnOpts,e=handleMoveSelected(i,n,e,t,l,o,r);(c.isCurrent||u)&&(d.isFollowSelected?i.triggerCurrentRowEvent(n,e):(l||r)&&(c.isCurrent||u)&&i.moveCurrentRow(l,r,n)),(h.isCurrent||s)&&(a.isFollowSelected?i.triggerCurrentColumnEvent(n,e):(t||o)&&(h.isCurrent||s)&&i.moveCurrentColumn(t,o,n))},moveEnterSelected(e,t,l,o,r,n){var i=this,{highlightCurrentRow:u,highlightCurrentColumn:s}=i,c=i.computeRowOpts,d=i.computeCurrentRowOpts,h=i.computeColumnOpts,a=i.computeCurrentColumnOpts,e=handleMoveSelected(i,n,e,t,l,o,r);(c.isCurrent||u)&&d.isFollowSelected&&i.triggerCurrentRowEvent(n,e),(h.isCurrent||s)&&a.isFollowSelected&&i.triggerCurrentColumnEvent(n,e)},moveSelected(e,t,l,o,r,n){handleMoveSelected(this,n,e,t,l,o,r)},handleCellMousedownEvent(e,t){var{editConfig:l,editOpts:o,handleSelected:r,checkboxConfig:n,checkboxOpts:i,mouseConfig:u,mouseOpts:s}=this;if(u&&s.area&&this.triggerCellAreaModnEvent)return this.triggerCellAreaModnEvent(e,t);n&&i.range&&this.handleCheckboxRangeEvent(e,t),u&&s.selected&&(l&&"cell"!==o.mode||r(t,e))},handleCheckboxRangeEvent(e,S){let _=this;var t=_.elemStore,l=(0,_util.getRefElem)(t["main-body-scroll"]),o=(0,_util.getRefElem)(t["left-body-scroll"]),t=(0,_util.getRefElem)(t["right-body-scroll"]),{column:r,cell:n}=S;if("checkbox"===r.type){let E=l;if(o&&"left"===r.fixed?E=o:t&&"right"===r.fixed&&(E=t),E){let t=_.$refs.refElem,u=e.clientX,s=e.clientY,c=E.querySelector(".vxe-table--checkbox-range"),d=n.parentNode,h=this.getCheckboxRecords(),a=[],g=1;l=getTargetOffset(e.target,E);let m=l.offsetTop+e.offsetY,f=l.offsetLeft+e.offsetX,C=E.scrollTop,i=d.offsetHeight,p=d.getBoundingClientRect(),w=s-p.y,v=null,x=!1,R=1,b=(e,t)=>{this.emitEvent("checkbox-range-"+e,{records:()=>this.getCheckboxRecords(),reserves:()=>this.getCheckboxReserveRecords()},t)},T=e=>{var{clientX:t,clientY:l}=e,t=t-u,l=l-s+(E.scrollTop-C);let o=Math.abs(l),r=Math.abs(t),n=m,i=f;l<g?(n+=l)<g&&(n=g,o=m):o=Math.min(o,E.scrollHeight-m-g),t<g?(i+=t,r>f&&(i=g,r=f)):r=Math.min(r,E.clientWidth-f-g),c.style.height=o+"px",c.style.width=r+"px",c.style.left=i+"px",c.style.top=n+"px",c.style.display="block";t=getCheckboxRangeRows(this,e,S,d,p,w,l<g?-o:o);10<o&&t.length!==a.length&&(l=(0,_dom.hasControlKey)(e),a=t,l?t.forEach(e=>{_.handleBatchSelectRows([e],-1===h.indexOf(e))}):(this.setAllCheckboxRow(!1),this.handleCheckedCheckboxRow(t,!0,!1)),b("change",e))},O=()=>{clearTimeout(v),v=null},I=n=>{O(),v=setTimeout(()=>{var e,t,l,o,r;v&&({scrollLeft:e,scrollTop:t,clientHeight:l,scrollHeight:o}=E,r=Math.ceil(50*R/i),x?t+l<o?(this.scrollTo(e,t+r),I(n),T(n)):O():t?(this.scrollTo(e,t-r),I(n),T(n)):O())},50)};(0,_dom.addClass)(t,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,l=(0,_dom.getAbsolutePos)(E).boundingTop;t<l?(x=!1,R=l-t,v||I(e)):t>l+E.clientHeight?(x=!0,R=t-l-E.clientHeight,v||I(e)):v&&O(),T(e)},document.onmouseup=e=>{O(),(0,_dom.removeClass)(t,"drag--range"),c.removeAttribute("style"),document.onmousemove=null,document.onmouseup=null,b("end",e)},b("start",e)}}}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let browseObj=_xeUtils.default.browse();function getTargetOffset(e,t){let l=0,o=0;var r,n,u=!browseObj.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(u&&(r=getComputedStyle(e),l-=_xeUtils.default.toNumber(r.paddingTop),o-=_xeUtils.default.toNumber(r.paddingLeft));e&&e!==t;)l+=e.offsetTop,o+=e.offsetLeft,e=e.offsetParent,u&&(n=getComputedStyle(e),l-=_xeUtils.default.toNumber(n.paddingTop),o-=_xeUtils.default.toNumber(n.paddingLeft));return{offsetTop:l,offsetLeft:o}}function getCheckboxRangeRows(t,e,l,o,r,n,u){var i=t.showOverflow,{fullAllDataRowIdData:s,isResizeCellHeight:c}=t,d=t.computeRowOpts,a=t.computeCellOpts,g=t.computeDefaultRowHeight,l=l.row;let h=0,m=[],f=0;var C=0<u,p=t.scrollYLoad,w=t.afterFullData;if(f=C?n+u:r.height-n+Math.abs(u),p){r=t.getVTRowIndex(l);if(!(c||a.height||d.height)&&i)m=C?w.slice(r,r+Math.ceil(f/g)):w.slice(r-Math.floor(f/g),r+1);else if(C)for(let e=r;e<w.length;e++){var v=w[e],x=s[t.getRowid(v)]||{};if(h+=x.resizeHeight||a.height||d.height||x.height||g,m.push(v),h>f)return m}else for(let e=r;0<=e;e--){var R=w[e],b=s[t.getRowid(R)]||{};if(h+=b.resizeHeight||a.height||d.height||b.height||g,m.push(R),h>f)return m}}else for(var T=C?"next":"previous";o&&h<f;){var O=t.getRowNode(o);O&&(m.push(O.item),h+=o.offsetHeight,o=o[T+"ElementSibling"])}return m}function handleMoveSelected(e,t,l,o,r,n,u){var{afterFullData:i,visibleColumn:s}=e;let c=Object.assign({},l);var l=e.getVTRowIndex(c.row),d=e.getVTColumnIndex(c.column);return t.preventDefault(),r&&0<l?(c.rowIndex=l-1,c.row=i[c.rowIndex]):u&&l<i.length-1?(c.rowIndex=l+1,c.row=i[c.rowIndex]):o&&d?(c.columnIndex=d-1,c.column=s[c.columnIndex]):n&&d<s.length-1&&(c.columnIndex=d+1,c.column=s[c.columnIndex]),e.scrollToRow(c.row,c.column).then(()=>{c.cell=e.getCellElement(c.row,c.column),e.handleSelected(c,t)}),c}function handleCheckboxRangeEvent(S,e,_){var t=S.elemStore,l=(0,_util.getRefElem)(t["main-body-scroll"]),o=(0,_util.getRefElem)(t["left-body-scroll"]),t=(0,_util.getRefElem)(t["right-body-scroll"]),{column:r,cell:n}=_;if("checkbox"===r.type){let E=l;if(o&&"left"===r.fixed?E=o:t&&"right"===r.fixed&&(E=t),E){let t=S.$refs.refElem,i=e.clientX,s=e.clientY,c=E.querySelector(".vxe-table--checkbox-range"),d=n.parentNode,a=S.getCheckboxRecords(),g=[],h=1;l=getTargetOffset(e.target,E);let m=l.offsetTop+e.offsetY,f=l.offsetLeft+e.offsetX,C=E.scrollTop,u=d.offsetHeight,p=d.getBoundingClientRect(),w=s-p.y,v=null,x=!1,R=1,b=(e,t)=>{S.dispatchEvent("checkbox-range-"+e,{records:()=>S.getCheckboxRecords(),reserves:()=>S.getCheckboxReserveRecords()},t)},T=e=>{var{clientX:t,clientY:l}=e,t=t-i,l=l-s+(E.scrollTop-C);let o=Math.abs(l),r=Math.abs(t),n=m,u=f;l<h?(n+=l)<h&&(n=h,o=m):o=Math.min(o,E.scrollHeight-m-h),t<h?(u+=t,r>f&&(u=h,r=f)):r=Math.min(r,E.clientWidth-f-h),c.style.height=o+"px",c.style.width=r+"px",c.style.left=u+"px",c.style.top=n+"px",c.style.display="block";t=getCheckboxRangeRows(S,e,_,d,p,w,l<h?-o:o);10<o&&t.length!==g.length&&(l=(0,_dom.hasControlKey)(e),g=t,l?t.forEach(e=>{S.handleBatchSelectRows([e],-1===a.indexOf(e))}):(S.setAllCheckboxRow(!1),S.handleCheckedCheckboxRow(t,!0,!1)),b("change",e))},O=()=>{clearTimeout(v),v=null},I=n=>{O(),v=setTimeout(()=>{var e,t,l,o,r;v&&({scrollLeft:e,scrollTop:t,clientHeight:l,scrollHeight:o}=E,r=Math.ceil(50*R/u),x?t+l<o?(S.scrollTo(e,t+r),I(n),T(n)):O():t?(S.scrollTo(e,t-r),I(n),T(n)):O())},50)};(0,_dom.addClass)(t,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,l=(0,_dom.getAbsolutePos)(E).boundingTop;t<l?(x=!1,R=l-t,v||I(e)):t>l+E.clientHeight?(x=!0,R=t-l-E.clientHeight,v||I(e)):v&&O(),T(e)},document.onmouseup=e=>{O(),(0,_dom.removeClass)(t,"drag--range"),c.removeAttribute("style"),document.onmousemove=null,document.onmouseup=null,b("end",e)},b("start",e)}}}var _default=exports.default={methods:{moveTabSelected(e,t,l){let o=this;var r=o.editConfig,{afterFullData:n,visibleColumn:u}=o,i=o.computeEditOpts,s=o.computeRowOpts,c=o.computeCurrentRowOpts,d=o.computeColumnOpts,a=o.computeCurrentColumnOpts;let g,h,m,f=Object.assign({},e);var e=o.getVTRowIndex(f.row),C=o.getVTColumnIndex(f.column),t=(l.preventDefault(),t?C<=0?0<e&&(h=e-1,g=n[h],m=u.length-1):m=C-1:C>=u.length-1?e<n.length-1&&(h=e+1,g=n[h],m=0):m=C+1,u[m]);t&&(g?(f.rowIndex=h,f.row=g):f.rowIndex=e,f.columnIndex=m,f.column=t,f.cell=o.getCellElement(f.row,f.column),s.isCurrent&&c.isFollowSelected&&o.triggerCurrentRowEvent(l,f),d.isCurrent&&a.isFollowSelected&&o.triggerCurrentColumnEvent(l,f),r?"click"!==i.trigger&&"dblclick"!==i.trigger||("row"===i.mode?o.handleEdit(f,l):o.scrollToRow(f.row,f.column).then(()=>{o.handleSelected(f,l)})):o.scrollToRow(f.row,f.column).then(()=>{o.handleSelected(f,l)}))},moveCurrentRow(e,t,l){let o=this;var r=o,n=o,u=o,r=r.treeConfig;let i=n.currentRow;var n=u.afterFullData,u=o.computeTreeOpts,u=u.children||u.childrenField;let s;if(i?r?({index:r,items:u}=_xeUtils.default.findTree(n,e=>e===i,{children:u}),e&&0<r?s=u[r-1]:t&&r<u.length-1&&(s=u[r+1])):(u=o.getVTRowIndex(i),e&&0<u?s=n[u-1]:t&&u<n.length-1&&(s=n[u+1])):s=n[0],s){l.preventDefault();let e={$table:o,row:s,rowIndex:o.getRowIndex(s),$rowIndex:o.getVMRowIndex(s)};o.scrollToRow(s).then(()=>o.triggerCurrentRowEvent(l,e))}},moveCurrentColumn(e,t,l){let o=this;var r=o.currentColumn,n=o.visibleColumn;let u=null;if(r?(r=o.getVTColumnIndex(r),e&&0<r?u=n[r-1]:t&&r<n.length-1&&(u=n[r+1])):u=n[0],u){l.preventDefault();let e={$table:o,column:u,columnIndex:o.getColumnIndex(u),$columnIndex:o.getVMColumnIndex(u)};o.scrollToColumn(u).then(()=>o.triggerCurrentColumnEvent(l,e))}},moveArrowSelected(e,t,l,o,r,n){var u=this,{highlightCurrentRow:i,highlightCurrentColumn:s}=u,c=u.computeRowOpts,d=u.computeCurrentRowOpts,a=u.computeColumnOpts,g=u.computeCurrentColumnOpts,e=handleMoveSelected(u,n,e,t,l,o,r);(c.isCurrent||i)&&(d.isFollowSelected?u.triggerCurrentRowEvent(n,e):(l||r)&&(c.isCurrent||i)&&u.moveCurrentRow(l,r,n)),(a.isCurrent||s)&&(g.isFollowSelected?u.triggerCurrentColumnEvent(n,e):(t||o)&&(a.isCurrent||s)&&u.moveCurrentColumn(t,o,n))},moveEnterSelected(e,t,l,o,r,n){var u=this,{highlightCurrentRow:i,highlightCurrentColumn:s}=u,c=u.computeRowOpts,d=u.computeCurrentRowOpts,a=u.computeColumnOpts,g=u.computeCurrentColumnOpts,e=handleMoveSelected(u,n,e,t,l,o,r);(c.isCurrent||i)&&d.isFollowSelected&&u.triggerCurrentRowEvent(n,e),(a.isCurrent||s)&&g.isFollowSelected&&u.triggerCurrentColumnEvent(n,e)},moveSelected(e,t,l,o,r,n){handleMoveSelected(this,n,e,t,l,o,r)},handleCellMousedownEvent(e,t){var l=this,{editConfig:o,checkboxConfig:r,mouseConfig:n}=l,u=l.computeCheckboxOpts,i=l.computeMouseOpts,s=l.computeEditOpts;if(n&&i.area&&l.triggerCellAreaModnEvent)return l.triggerCellAreaModnEvent(e,t);r&&u.range&&handleCheckboxRangeEvent(l,e,t),n&&i.selected&&(o&&"cell"!==s.mode||l.handleSelected(t,e))}}};
@@ -60,7 +60,7 @@ function renderRows(h, _vm, isOptimizeMode, tableColumn, footerTableData, row, $
60
60
  const defaultRowHeight = $xeTable.computeDefaultRowHeight;
61
61
  const cellOpts = $xeTable.computeCellOpts;
62
62
  const footerCellOpts = $xeTable.computeFooterCellOpts;
63
- const currCellHeight = (0, _util.getCellHeight)(footerCellOpts.height) || defaultRowHeight;
63
+ const currCellHeight = (0, _util.getCalcHeight)(footerCellOpts.height) || defaultRowHeight;
64
64
  return tableColumn.map((column, $columnIndex) => {
65
65
  const {
66
66
  type,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let renderType="footer",{renderer,renderEmptyElement}=_ui.VxeUI;function renderRows(C,e,_,F,T,$,S,E){let I=e.$parent;var l=I,t=I,r=I;let O=I.$xeGrid,z=I.$xeGantt,R=e.fixedType,{resizable:D,border:k,footerCellClassName:A,footerCellStyle:q,footerAlign:U,footerSpanMethod:X,align:M,columnKey:L,showFooterOverflow:H}=l,{scrollXLoad:N,scrollYLoad:j,overflowX:G,currentColumn:V,mergeFootFlag:W}=t,{fullColumnIdData:B,mergeFooterList:K,mergeFooterCellMaps:P,scrollXStore:Y}=r,ee=I.computeVirtualXOpts,le=I.computeTooltipOpts,te=I.resizableOpts.isAllColumnDrag,J=I.computeColumnOpts;e=I.computeDefaultRowHeight;let re=I.computeCellOpts,Q=I.computeFooterCellOpts,Z=(0,_util.getCellHeight)(Q.height)||e;return F.map((l,e)=>{var{type:t,showFooterOverflow:r,footerAlign:o,align:i,footerClassName:a,editRender:n,cellRender:s}=l,d=l.id,u=B[d]||{},n=n||s,s=n?renderer.get(n.name):null;let p=le.showAll;var n=G&&(R?l.fixed!==R:!!l.fixed),c=(_xeUtils.default.isBoolean(Q.padding)?Q:re).padding,r=_xeUtils.default.eqNull(r)?H:r,o=o||(s?s.tableFooterCellAlign:"")||U||i||(s?s.tableCellAlign:"")||M,i="ellipsis"===r;let f="title"===r,x=!0===r||"tooltip"===r;var s=f||x||i,r=_xeUtils.default.isBoolean(l.resizable)?l.resizable:J.resizable||D,m={colid:d},v={},g=u.index,u=u._index,w=u;let b={$table:I,$grid:O,$gantt:z,row:$,rowIndex:E,_rowIndex:E,$rowIndex:S,column:l,columnIndex:g,$columnIndex:e,_columnIndex:u,itemIndex:w,items:$,fixed:R,type:renderType,data:T},h=((f||x||p)&&(v.mouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(x||p)&&I.triggerFooterTooltipEvent(e,b)}),(x||p)&&(v.mouseleave=e=>{(x||p)&&I.handleTargetLeaveEvent(e)}),v.click=e=>{I.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},b),e)},!(v.dblclick=e=>{I.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},b),e)}));if(W&&K.length){g=P[E+":"+u];if(g){var{rowspan:w,colspan:g}=g;if(!w||!g)return null;1<w&&(h=!0,m.rowspan=w),1<g&&(h=!0,m.colspan=g)}}else if(X){var{rowspan:w=1,colspan:g=1}=X(b)||{};if(!w||!g)return null;1<w&&(m.rowspan=w),1<g&&(m.colspan=g)}w=e===F.length-1,g=!l.resizeWidth&&("auto"===l.minWidth||"auto"===l.width);let y=!1;_&&G&&!h&&N&&10<F.length&&!l.fixed&&!ee.immediate&&(u<Y.visibleStartIndex-Y.preloadSize||u>Y.visibleEndIndex+Y.preloadSize)&&(y=!0);u={};return s?u.height=Z+"px":u.minHeight=Z+"px",C("td",{class:["vxe-table--column vxe-footer--column",l.id,{["col--"+o]:o,["col--"+t]:t,"col--last":w,"fixed--width":!g,"fixed--hidden":n,"is--padding":c,"col--ellipsis":s,"col--current":V===l},(0,_utils.getClass)(a,b),(0,_utils.getClass)(A,b)],attrs:m,style:q?_xeUtils.default.isFunction(q)?q(b):q:void 0,on:v,key:L||N||j||J.useKey||J.drag?l.id:e},[C("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":x,"c--ellipsis":i}],style:u},y?[]:[C("div",{attrs:{colid:d},class:"vxe-cell--wrapper vxe-footer-cell--wrapper"},l.renderFooter(C,b))]),!n&&r&&te?C("div",{class:["vxe-cell--col-resizable",{"is--line":!k||"none"===k}],on:{mousedown:e=>I.handleColResizeMousedownEvent(e,R,b),dblclick:e=>I.handleColResizeDblclickEvent(e,b)}}):renderEmptyElement(I)])})}function renderHeads(o,i,a,n){let s=i.$parent;var e=s;let{fixedType:d,footerTableData:u}=i,{footerRowClassName:p,footerRowStyle:c}=e;return u.map((e,l)=>{var t=l,r={$table:s,row:e,_rowIndex:t,$rowIndex:l,fixed:d,type:renderType};return o("tr",{key:l,class:["vxe-footer--row",p?_xeUtils.default.isFunction(p)?p(r):p:""],style:c?_xeUtils.default.isFunction(c)?c(r):c:void 0},renderRows(o,i,a,n,u,e,l,t))})}var _default=exports.default={name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},mounted(){var e=this,l=e.fixedType,t=e.$parent.elemStore,l=`${l||"main"}-footer-`;t[l+"wrapper"]=e.$refs.refElem,t[l+"scroll"]=e.$refs.refFooterScroll,t[l+"table"]=e.$refs.refFooterTable,t[l+"colgroup"]=e.$refs.refFooterColgroup,t[l+"list"]=e.$refs.refFooterTFoot,t[l+"xSpace"]=e.$refs.refFooterXSpace},destroyed(){var e=this.fixedType,l=this.$parent.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null},render(t){let l=this.$parent;var e=l,r=l,o=l,i=l.xID;let{fixedType:a,fixedColumn:n,tableColumn:s}=this;var{spanMethod:e,footerSpanMethod:d,showFooterOverflow:u}=e,{visibleColumn:o,fullColumnIdData:p}=o,{isGroup:r,isColLoading:c,overflowX:f,scrollXLoad:x,dragCol:m}=r;let v=s,g=!1;return x&&u&&(e||d||(g=!0)),g&&(c||!a&&f)||(v=o),a&&g&&(v=n||[]),a||r||x&&m&&2<v.length&&(u=p[m.id])&&(e=u._index,d=v[0],c=v[v.length-1],f=p[d.id],o=p[c.id],f)&&o&&(r=f._index,x=o._index,e<r?v=[m].concat(v):x<e&&(v=v.concat([m]))),t("div",{ref:"refElem",class:["vxe-table--footer-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],attrs:{xid:i}},[t("div",{ref:"refFooterScroll",class:"vxe-table--footer-inner-wrapper",on:{scroll(e){l.triggerFooterScrollEvent(e,a)}}},[a?renderEmptyElement(l):t("div",{ref:"refFooterXSpace",class:"vxe-body--x-space"}),t("table",{ref:"refFooterTable",class:"vxe-table--footer",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0,xvm:g?"1":null}},[t("colgroup",{ref:"refFooterColgroup"},v.map((e,l)=>t("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),t("tfoot",{ref:"refFooterTFoot"},renderHeads(t,this,g,v))])])])}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let renderType="footer",{renderer,renderEmptyElement}=_ui.VxeUI;function renderRows(C,e,_,F,T,$,S,E){let I=e.$parent;var l=I,t=I,r=I;let O=I.$xeGrid,z=I.$xeGantt,R=e.fixedType,{resizable:D,border:k,footerCellClassName:A,footerCellStyle:q,footerAlign:U,footerSpanMethod:X,align:M,columnKey:L,showFooterOverflow:H}=l,{scrollXLoad:N,scrollYLoad:j,overflowX:G,currentColumn:V,mergeFootFlag:W}=t,{fullColumnIdData:B,mergeFooterList:K,mergeFooterCellMaps:P,scrollXStore:Y}=r,ee=I.computeVirtualXOpts,le=I.computeTooltipOpts,te=I.resizableOpts.isAllColumnDrag,J=I.computeColumnOpts;e=I.computeDefaultRowHeight;let re=I.computeCellOpts,Q=I.computeFooterCellOpts,Z=(0,_util.getCalcHeight)(Q.height)||e;return F.map((l,e)=>{var{type:t,showFooterOverflow:r,footerAlign:o,align:i,footerClassName:a,editRender:n,cellRender:s}=l,d=l.id,u=B[d]||{},n=n||s,s=n?renderer.get(n.name):null;let p=le.showAll;var n=G&&(R?l.fixed!==R:!!l.fixed),c=(_xeUtils.default.isBoolean(Q.padding)?Q:re).padding,r=_xeUtils.default.eqNull(r)?H:r,o=o||(s?s.tableFooterCellAlign:"")||U||i||(s?s.tableCellAlign:"")||M,i="ellipsis"===r;let f="title"===r,x=!0===r||"tooltip"===r;var s=f||x||i,r=_xeUtils.default.isBoolean(l.resizable)?l.resizable:J.resizable||D,m={colid:d},v={},g=u.index,u=u._index,w=u;let b={$table:I,$grid:O,$gantt:z,row:$,rowIndex:E,_rowIndex:E,$rowIndex:S,column:l,columnIndex:g,$columnIndex:e,_columnIndex:u,itemIndex:w,items:$,fixed:R,type:renderType,data:T},h=((f||x||p)&&(v.mouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(x||p)&&I.triggerFooterTooltipEvent(e,b)}),(x||p)&&(v.mouseleave=e=>{(x||p)&&I.handleTargetLeaveEvent(e)}),v.click=e=>{I.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},b),e)},!(v.dblclick=e=>{I.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},b),e)}));if(W&&K.length){g=P[E+":"+u];if(g){var{rowspan:w,colspan:g}=g;if(!w||!g)return null;1<w&&(h=!0,m.rowspan=w),1<g&&(h=!0,m.colspan=g)}}else if(X){var{rowspan:w=1,colspan:g=1}=X(b)||{};if(!w||!g)return null;1<w&&(m.rowspan=w),1<g&&(m.colspan=g)}w=e===F.length-1,g=!l.resizeWidth&&("auto"===l.minWidth||"auto"===l.width);let y=!1;_&&G&&!h&&N&&10<F.length&&!l.fixed&&!ee.immediate&&(u<Y.visibleStartIndex-Y.preloadSize||u>Y.visibleEndIndex+Y.preloadSize)&&(y=!0);u={};return s?u.height=Z+"px":u.minHeight=Z+"px",C("td",{class:["vxe-table--column vxe-footer--column",l.id,{["col--"+o]:o,["col--"+t]:t,"col--last":w,"fixed--width":!g,"fixed--hidden":n,"is--padding":c,"col--ellipsis":s,"col--current":V===l},(0,_utils.getClass)(a,b),(0,_utils.getClass)(A,b)],attrs:m,style:q?_xeUtils.default.isFunction(q)?q(b):q:void 0,on:v,key:L||N||j||J.useKey||J.drag?l.id:e},[C("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":x,"c--ellipsis":i}],style:u},y?[]:[C("div",{attrs:{colid:d},class:"vxe-cell--wrapper vxe-footer-cell--wrapper"},l.renderFooter(C,b))]),!n&&r&&te?C("div",{class:["vxe-cell--col-resizable",{"is--line":!k||"none"===k}],on:{mousedown:e=>I.handleColResizeMousedownEvent(e,R,b),dblclick:e=>I.handleColResizeDblclickEvent(e,b)}}):renderEmptyElement(I)])})}function renderHeads(o,i,a,n){let s=i.$parent;var e=s;let{fixedType:d,footerTableData:u}=i,{footerRowClassName:p,footerRowStyle:c}=e;return u.map((e,l)=>{var t=l,r={$table:s,row:e,_rowIndex:t,$rowIndex:l,fixed:d,type:renderType};return o("tr",{key:l,class:["vxe-footer--row",p?_xeUtils.default.isFunction(p)?p(r):p:""],style:c?_xeUtils.default.isFunction(c)?c(r):c:void 0},renderRows(o,i,a,n,u,e,l,t))})}var _default=exports.default={name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},mounted(){var e=this,l=e.fixedType,t=e.$parent.elemStore,l=`${l||"main"}-footer-`;t[l+"wrapper"]=e.$refs.refElem,t[l+"scroll"]=e.$refs.refFooterScroll,t[l+"table"]=e.$refs.refFooterTable,t[l+"colgroup"]=e.$refs.refFooterColgroup,t[l+"list"]=e.$refs.refFooterTFoot,t[l+"xSpace"]=e.$refs.refFooterXSpace},destroyed(){var e=this.fixedType,l=this.$parent.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null},render(t){let l=this.$parent;var e=l,r=l,o=l,i=l.xID;let{fixedType:a,fixedColumn:n,tableColumn:s}=this;var{spanMethod:e,footerSpanMethod:d,showFooterOverflow:u}=e,{visibleColumn:o,fullColumnIdData:p}=o,{isGroup:r,isColLoading:c,overflowX:f,scrollXLoad:x,dragCol:m}=r;let v=s,g=!1;return x&&u&&(e||d||(g=!0)),g&&(c||!a&&f)||(v=o),a&&g&&(v=n||[]),a||r||x&&m&&2<v.length&&(u=p[m.id])&&(e=u._index,d=v[0],c=v[v.length-1],f=p[d.id],o=p[c.id],f)&&o&&(r=f._index,x=o._index,e<r?v=[m].concat(v):x<e&&(v=v.concat([m]))),t("div",{ref:"refElem",class:["vxe-table--footer-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],attrs:{xid:i}},[t("div",{ref:"refFooterScroll",class:"vxe-table--footer-inner-wrapper",on:{scroll(e){l.triggerFooterScrollEvent(e,a)}}},[a?renderEmptyElement(l):t("div",{ref:"refFooterXSpace",class:"vxe-body--x-space"}),t("table",{ref:"refFooterTable",class:"vxe-table--footer",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0,xvm:g?"1":null}},[t("colgroup",{ref:"refFooterColgroup"},v.map((e,l)=>t("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),t("tfoot",{ref:"refFooterTFoot"},renderHeads(t,this,g,v))])])])}};
@@ -53,7 +53,7 @@ const renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) => {
53
53
  const cellOpts = $xeTable.computeCellOpts;
54
54
  const defaultRowHeight = $xeTable.computeDefaultRowHeight;
55
55
  const headerCellOpts = $xeTable.computeHeaderCellOpts;
56
- const currCellHeight = (0, _util.getCellHeight)(headerCellOpts.height) || defaultRowHeight;
56
+ const currCellHeight = (0, _util.getCalcHeight)(headerCellOpts.height) || defaultRowHeight;
57
57
  const {
58
58
  disabledMethod: dragDisabledMethod,
59
59
  isCrossDrag,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,cellType="header",renderRows=($,e,E,S,D,T)=>{let R=e.$parent,I=R.$xeGrid,O=R.$xeGantt;var l=R,r=R,a=R;let k=e.fixedType,{resizable:z,columnKey:U,headerCellClassName:M,headerCellStyle:A,showHeaderOverflow:X,headerAlign:q,align:G,mouseConfig:F}=l,{currentColumn:L,dragCol:N,scrollXLoad:B,scrollYLoad:V,overflowX:W,tableColumn:K}=r,{fullColumnIdData:P,scrollXStore:j}=a,Y=R.computeVirtualXOpts,J=R.computeColumnOpts,Q=R.computeColumnDragOpts,Z=R.computeCellOpts;e=R.computeDefaultRowHeight;let ee=R.computeHeaderCellOpts,le=(0,_util.getCellHeight)(ee.height)||e,{disabledMethod:re,isCrossDrag:ae,isPeerDrag:te}=Q;return D.map((e,l)=>{var{type:r,showHeaderOverflow:a,headerAlign:t,align:d,filters:i,headerClassName:n,editRender:s,cellRender:o}=e,u=e.id,c=P[u]||{},s=s||o,o=s?renderer.get(s.name):null,s=e.children&&e.children.length,p=W&&!s&&(k?e.fixed!==k:!!e.fixed),f=(_xeUtils.default.isBoolean(ee.padding)?ee:Z).padding,a=_xeUtils.default.isUndefined(a)||_xeUtils.default.isNull(a)?X:a,t=t||(o?o.tableHeaderCellAlign:"")||q||d||(o?o.tableCellAlign:"")||G,d="ellipsis"===a,o="title"===a,a=!0===a||"tooltip"===a,x=o||a||d;let m=!1,h=null;i&&(h=i[0],m=i.some(e=>e.checked));var g=c.index,c=c._index;let v={$table:R,$grid:I,$gantt:O,$rowIndex:T,column:e,columnIndex:g,$columnIndex:l,_columnIndex:c,firstFilterOption:h,fixed:k,type:cellType,isHidden:p,hasFilter:m};var g={colid:u,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},C={click:e=>R.triggerHeaderCellClickEvent(e,v),dblclick:e=>R.triggerHeaderCellDblclickEvent(e,v)},b=J.drag&&"cell"===Q.trigger;let w=!1;b&&(w=!(!re||!re(v))),(F||b)&&(C.mousedown=e=>R.triggerHeaderCellMousedownEvent(e,v)),J.drag&&(C.dragstart=R.handleHeaderCellDragDragstartEvent,C.dragend=R.handleHeaderCellDragDragendEvent,C.dragover=R.handleHeaderCellDragDragoverEvent,b)&&(C.mouseup=R.handleHeaderCellDragMouseupEvent);var b=l===D.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:J.resizable||z,H=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let _=!1;!S||!W||E||N&&N.id===u||B&&10<K.length&&!e.fixed&&!Y.immediate&&(c<j.visibleStartIndex-j.preloadSize||c>j.visibleEndIndex+j.preloadSize)&&(_=!0);c={};return x?c.height=le+"px":c.minHeight=le+"px",$("th",{class:["vxe-table--column vxe-header--column",u,{["col--"+t]:t,["col--"+r]:r,"col--last":b,"col--fixed":e.fixed,"col--group":s,"col--ellipsis":x,"fixed--width":!H,"fixed--hidden":p,"is--padding":f,"is--sortable":e.sortable,"col--filter":!!i,"is--filter-active":m,"is--drag-active":J.drag&&!e.fixed&&!w&&(ae||te||!e.parentId),"is--drag-disabled":J.drag&&w,"col--current":L===e},(0,_utils.getClass)(n,v),(0,_utils.getClass)(M,v)],attrs:g,style:A?_xeUtils.default.isFunction(A)?A(v):A:void 0,on:C,key:U||B||V||J.useKey||J.drag||s?u:l},[$("div",{class:["vxe-cell",{"c--title":o,"c--tooltip":a,"c--ellipsis":d}],style:c},_||S&&p?[]:[$("div",{attrs:{colid:u},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader($,v))]),!p&&y?$("div",{class:"vxe-cell--col-resizable",on:{mousedown:e=>R.handleColResizeMousedownEvent(e,k,v),dblclick:e=>R.handleColResizeDblclickEvent(e,v)}}):renderEmptyElement(R)])})};function renderHeads(a,t,d,i,e){let n=t.$parent;var l=n;let s=t.fixedType,{headerRowClassName:o,headerRowStyle:u}=l;return e.map((e,l)=>{var r={$table:n,$rowIndex:l,fixed:s,type:cellType};return a("tr",{key:l,class:["vxe-header--row",o?_xeUtils.default.isFunction(o)?o(r):o:""],style:u?_xeUtils.default.isFunction(u)?u(r):u:void 0},renderRows(a,t,d,i,e,l))})}var _default=exports.default={name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},data(){return{headerColumn:[]}},watch:{tableColumn(){this.uploadColumn()}},created(){this.uploadColumn()},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-header-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refHeaderScroll,r[l+"table"]=e.$refs.refHeaderTable,r[l+"colgroup"]=e.$refs.refHeaderColgroup,r[l+"list"]=e.$refs.refHeaderTHead,r[l+"xSpace"]=e.$refs.refHeaderXSpace,r[l+"repair"]=e.$refs.refHeaderBorderRepair},destroyed(){var e=this.fixedType,l=this.$parent.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},render(r){let l=this.$parent;var e=l,a=l,t=l,d=l.xID;let{fixedType:i,fixedColumn:n,tableColumn:s}=this;var o=this.headerColumn,{mouseConfig:e,showHeaderOverflow:u,spanMethod:c,footerSpanMethod:p}=e,{isGroup:a,isColLoading:f,overflowX:x,scrollXLoad:m,dragCol:h}=a,{visibleColumn:t,fullColumnIdData:g}=t,v=l.computeMouseOpts;let C=o,b=s,w=!1;return a?b=t:(m&&u&&(c||p||(w=!0)),w&&(f||!i&&x)||(b=t),i&&w&&(b=n||[]),C=[b]),i||a||m&&h&&2<b.length&&(o=g[h.id])&&(u=o._index,c=b[0],p=b[b.length-1],f=g[c.id],x=g[p.id],f)&&x&&(t=f._index,m=x._index,u<t?(b=[h].concat(b),C=[[h].concat(C[0])].concat(C.slice(1))):m<u&&(b=b.concat([h]),C=[C[0].concat([h])].concat(C.slice(1)))),r("div",{ref:"refElem",class:["vxe-table--header-wrapper",i?`fixed-${i}--wrapper`:"body--wrapper"],attrs:{xid:d}},[r("div",{ref:"refHeaderScroll",class:"vxe-table--header-inner-wrapper",on:{scroll(e){l.triggerHeaderScrollEvent(e,i)}}},[i?renderEmptyElement(l):r("div",{ref:"refHeaderXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refHeaderTable",class:"vxe-table--header",attrs:{xid:d,cellspacing:0,cellpadding:0,border:0,xvm:w?"1":null}},[r("colgroup",{ref:"refHeaderColgroup"},b.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("thead",{ref:"refHeaderTHead"},renderHeads(r,this,a,w,C))]),e&&v.area?r("div",{class:"vxe-table--cell-area"},[r("span",{class:"vxe-table--cell-main-area"}),r("span",{class:"vxe-table--cell-clip-area"}),r("span",{class:"vxe-table--cell-extend-area"}),r("span",{class:"vxe-table--cell-multi-area"}),r("span",{class:"vxe-table--cell-active-area"}),r("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(l)])])},methods:{uploadColumn(){var e=this.$parent.isGroup;this.headerColumn=e?(0,_util.convertHeaderColumnToRows)(this.tableGroupColumn):[]}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,cellType="header",renderRows=($,e,E,S,D,T)=>{let R=e.$parent,I=R.$xeGrid,O=R.$xeGantt;var l=R,r=R,a=R;let k=e.fixedType,{resizable:z,columnKey:U,headerCellClassName:M,headerCellStyle:A,showHeaderOverflow:X,headerAlign:q,align:G,mouseConfig:F}=l,{currentColumn:L,dragCol:N,scrollXLoad:B,scrollYLoad:V,overflowX:W,tableColumn:K}=r,{fullColumnIdData:P,scrollXStore:j}=a,Y=R.computeVirtualXOpts,J=R.computeColumnOpts,Q=R.computeColumnDragOpts,Z=R.computeCellOpts;e=R.computeDefaultRowHeight;let ee=R.computeHeaderCellOpts,le=(0,_util.getCalcHeight)(ee.height)||e,{disabledMethod:re,isCrossDrag:ae,isPeerDrag:te}=Q;return D.map((e,l)=>{var{type:r,showHeaderOverflow:a,headerAlign:t,align:d,filters:i,headerClassName:n,editRender:s,cellRender:o}=e,u=e.id,c=P[u]||{},s=s||o,o=s?renderer.get(s.name):null,s=e.children&&e.children.length,p=W&&!s&&(k?e.fixed!==k:!!e.fixed),f=(_xeUtils.default.isBoolean(ee.padding)?ee:Z).padding,a=_xeUtils.default.isUndefined(a)||_xeUtils.default.isNull(a)?X:a,t=t||(o?o.tableHeaderCellAlign:"")||q||d||(o?o.tableCellAlign:"")||G,d="ellipsis"===a,o="title"===a,a=!0===a||"tooltip"===a,x=o||a||d;let m=!1,h=null;i&&(h=i[0],m=i.some(e=>e.checked));var g=c.index,c=c._index;let v={$table:R,$grid:I,$gantt:O,$rowIndex:T,column:e,columnIndex:g,$columnIndex:l,_columnIndex:c,firstFilterOption:h,fixed:k,type:cellType,isHidden:p,hasFilter:m};var g={colid:u,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},C={click:e=>R.triggerHeaderCellClickEvent(e,v),dblclick:e=>R.triggerHeaderCellDblclickEvent(e,v)},b=J.drag&&"cell"===Q.trigger;let w=!1;b&&(w=!(!re||!re(v))),(F||b)&&(C.mousedown=e=>R.triggerHeaderCellMousedownEvent(e,v)),J.drag&&(C.dragstart=R.handleHeaderCellDragDragstartEvent,C.dragend=R.handleHeaderCellDragDragendEvent,C.dragover=R.handleHeaderCellDragDragoverEvent,b)&&(C.mouseup=R.handleHeaderCellDragMouseupEvent);var b=l===D.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:J.resizable||z,H=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let _=!1;!S||!W||E||N&&N.id===u||B&&10<K.length&&!e.fixed&&!Y.immediate&&(c<j.visibleStartIndex-j.preloadSize||c>j.visibleEndIndex+j.preloadSize)&&(_=!0);c={};return x?c.height=le+"px":c.minHeight=le+"px",$("th",{class:["vxe-table--column vxe-header--column",u,{["col--"+t]:t,["col--"+r]:r,"col--last":b,"col--fixed":e.fixed,"col--group":s,"col--ellipsis":x,"fixed--width":!H,"fixed--hidden":p,"is--padding":f,"is--sortable":e.sortable,"col--filter":!!i,"is--filter-active":m,"is--drag-active":J.drag&&!e.fixed&&!w&&(ae||te||!e.parentId),"is--drag-disabled":J.drag&&w,"col--current":L===e},(0,_utils.getClass)(n,v),(0,_utils.getClass)(M,v)],attrs:g,style:A?_xeUtils.default.isFunction(A)?A(v):A:void 0,on:C,key:U||B||V||J.useKey||J.drag||s?u:l},[$("div",{class:["vxe-cell",{"c--title":o,"c--tooltip":a,"c--ellipsis":d}],style:c},_||S&&p?[]:[$("div",{attrs:{colid:u},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader($,v))]),!p&&y?$("div",{class:"vxe-cell--col-resizable",on:{mousedown:e=>R.handleColResizeMousedownEvent(e,k,v),dblclick:e=>R.handleColResizeDblclickEvent(e,v)}}):renderEmptyElement(R)])})};function renderHeads(a,t,d,i,e){let n=t.$parent;var l=n;let s=t.fixedType,{headerRowClassName:o,headerRowStyle:u}=l;return e.map((e,l)=>{var r={$table:n,$rowIndex:l,fixed:s,type:cellType};return a("tr",{key:l,class:["vxe-header--row",o?_xeUtils.default.isFunction(o)?o(r):o:""],style:u?_xeUtils.default.isFunction(u)?u(r):u:void 0},renderRows(a,t,d,i,e,l))})}var _default=exports.default={name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},data(){return{headerColumn:[]}},watch:{tableColumn(){this.uploadColumn()}},created(){this.uploadColumn()},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-header-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refHeaderScroll,r[l+"table"]=e.$refs.refHeaderTable,r[l+"colgroup"]=e.$refs.refHeaderColgroup,r[l+"list"]=e.$refs.refHeaderTHead,r[l+"xSpace"]=e.$refs.refHeaderXSpace,r[l+"repair"]=e.$refs.refHeaderBorderRepair},destroyed(){var e=this.fixedType,l=this.$parent.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},render(r){let l=this.$parent;var e=l,a=l,t=l,d=l.xID;let{fixedType:i,fixedColumn:n,tableColumn:s}=this;var o=this.headerColumn,{mouseConfig:e,showHeaderOverflow:u,spanMethod:c,footerSpanMethod:p}=e,{isGroup:a,isColLoading:f,overflowX:x,scrollXLoad:m,dragCol:h}=a,{visibleColumn:t,fullColumnIdData:g}=t,v=l.computeMouseOpts;let C=o,b=s,w=!1;return a?b=t:(m&&u&&(c||p||(w=!0)),w&&(f||!i&&x)||(b=t),i&&w&&(b=n||[]),C=[b]),i||a||m&&h&&2<b.length&&(o=g[h.id])&&(u=o._index,c=b[0],p=b[b.length-1],f=g[c.id],x=g[p.id],f)&&x&&(t=f._index,m=x._index,u<t?(b=[h].concat(b),C=[[h].concat(C[0])].concat(C.slice(1))):m<u&&(b=b.concat([h]),C=[C[0].concat([h])].concat(C.slice(1)))),r("div",{ref:"refElem",class:["vxe-table--header-wrapper",i?`fixed-${i}--wrapper`:"body--wrapper"],attrs:{xid:d}},[r("div",{ref:"refHeaderScroll",class:"vxe-table--header-inner-wrapper",on:{scroll(e){l.triggerHeaderScrollEvent(e,i)}}},[i?renderEmptyElement(l):r("div",{ref:"refHeaderXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refHeaderTable",class:"vxe-table--header",attrs:{xid:d,cellspacing:0,cellpadding:0,border:0,xvm:w?"1":null}},[r("colgroup",{ref:"refHeaderColgroup"},b.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("thead",{ref:"refHeaderTHead"},renderHeads(r,this,a,w,C))]),e&&v.area?r("div",{class:"vxe-table--cell-area"},[r("span",{class:"vxe-table--cell-main-area"}),r("span",{class:"vxe-table--cell-clip-area"}),r("span",{class:"vxe-table--cell-extend-area"}),r("span",{class:"vxe-table--cell-multi-area"}),r("span",{class:"vxe-table--cell-active-area"}),r("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(l)])])},methods:{uploadColumn(){var e=this.$parent.isGroup;this.headerColumn=e?(0,_util.convertHeaderColumnToRows)(this.tableGroupColumn):[]}}};
@@ -882,10 +882,20 @@ var _default = exports.default = {
882
882
  },
883
883
  computeHeaderCellOpts() {
884
884
  const $xeTable = this;
885
+ const $xeGantt = $xeTable.$xeGantt;
885
886
  const props = $xeTable;
886
887
  const headerCellOpts = Object.assign({}, getConfig().table.headerCellConfig, props.headerCellConfig);
888
+ const defaultRowHeight = $xeTable.computeDefaultRowHeight;
887
889
  const cellOpts = $xeTable.computeCellOpts;
888
- headerCellOpts.height = _xeUtils.default.toNumber((0, _util.getCellHeight)(headerCellOpts.height || cellOpts.height));
890
+ let headCellHeight = _xeUtils.default.toNumber((0, _util.getCalcHeight)(headerCellOpts.height || cellOpts.height));
891
+ if ($xeGantt) {
892
+ const taskScaleConfs = $xeGantt.computeTaskScaleConfs;
893
+ if (taskScaleConfs && taskScaleConfs.length > 2) {
894
+ const ganttMinHeadCellHeight = defaultRowHeight / 2 * taskScaleConfs.length;
895
+ headCellHeight = Math.max(ganttMinHeadCellHeight, headCellHeight);
896
+ }
897
+ }
898
+ headerCellOpts.height = headCellHeight;
889
899
  return headerCellOpts;
890
900
  },
891
901
  computeFooterCellOpts() {
@@ -893,7 +903,7 @@ var _default = exports.default = {
893
903
  const props = $xeTable;
894
904
  const footerCellOpts = Object.assign({}, getConfig().table.footerCellConfig, props.footerCellConfig);
895
905
  const cellOpts = $xeTable.computeCellOpts;
896
- footerCellOpts.height = _xeUtils.default.toNumber((0, _util.getCellHeight)(footerCellOpts.height || cellOpts.height));
906
+ footerCellOpts.height = _xeUtils.default.toNumber((0, _util.getCalcHeight)(footerCellOpts.height || cellOpts.height));
897
907
  return footerCellOpts;
898
908
  },
899
909
  rowOpts() {
@@ -1865,6 +1875,17 @@ var _default = exports.default = {
1865
1875
  this.preventEvent(null, 'activated');
1866
1876
  },
1867
1877
  deactivated() {
1878
+ const $xeTable = this;
1879
+ const reactData = $xeTable;
1880
+ const internalData = $xeTable;
1881
+ const {
1882
+ filterStore
1883
+ } = reactData;
1884
+ if (filterStore.visible) {
1885
+ $xeTable.clearFilter();
1886
+ }
1887
+ $xeTable.closeTooltip();
1888
+ internalData.isActivated = false;
1868
1889
  this.preventEvent(null, 'deactivated');
1869
1890
  },
1870
1891
  beforeDestroy() {