vxe-table 3.21.14 → 3.21.16

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 (162) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/locale/lang/ar-EG.js +7 -0
  4. package/es/locale/lang/de-DE.js +7 -0
  5. package/es/locale/lang/en-US.js +7 -0
  6. package/es/locale/lang/es-ES.js +7 -0
  7. package/es/locale/lang/fr-FR.js +7 -0
  8. package/es/locale/lang/hu-HU.js +7 -0
  9. package/es/locale/lang/hy-AM.js +7 -0
  10. package/es/locale/lang/id-ID.js +7 -0
  11. package/es/locale/lang/it-IT.js +7 -0
  12. package/es/locale/lang/ja-JP.js +7 -0
  13. package/es/locale/lang/ko-KR.js +7 -0
  14. package/es/locale/lang/ms-MY.js +7 -0
  15. package/es/locale/lang/nb-NO.js +7 -0
  16. package/es/locale/lang/pt-BR.js +7 -0
  17. package/es/locale/lang/ru-RU.js +7 -0
  18. package/es/locale/lang/th-TH.js +7 -0
  19. package/es/locale/lang/ug-CN.js +7 -0
  20. package/es/locale/lang/uk-UA.js +7 -0
  21. package/es/locale/lang/uz-UZ.js +7 -0
  22. package/es/locale/lang/vi-VN.js +7 -0
  23. package/es/locale/lang/zh-CHT.js +7 -0
  24. package/es/locale/lang/zh-CN.js +7 -0
  25. package/es/style.css +1 -1
  26. package/es/style.min.css +1 -1
  27. package/es/table/module/export/mixin.js +22 -3
  28. package/es/table/render/index.js +46 -18
  29. package/es/table/src/header.js +6 -3
  30. package/es/table/src/methods.js +32 -4
  31. package/es/table/src/table.js +25 -3
  32. package/es/table/style.css +10 -5
  33. package/es/table/style.min.css +1 -1
  34. package/es/ui/index.js +1 -1
  35. package/es/ui/src/log.js +1 -1
  36. package/es/vxe-table/style.css +10 -5
  37. package/es/vxe-table/style.min.css +1 -1
  38. package/lib/index.css +1 -1
  39. package/lib/index.min.css +1 -1
  40. package/lib/index.umd.js +135 -29
  41. package/lib/index.umd.min.js +1 -1
  42. package/lib/locale/lang/ar-EG.js +7 -0
  43. package/lib/locale/lang/ar-EG.min.js +1 -1
  44. package/lib/locale/lang/ar-EG.umd.js +7 -0
  45. package/lib/locale/lang/de-DE.js +7 -0
  46. package/lib/locale/lang/de-DE.min.js +1 -1
  47. package/lib/locale/lang/de-DE.umd.js +7 -0
  48. package/lib/locale/lang/en-US.js +7 -0
  49. package/lib/locale/lang/en-US.min.js +1 -1
  50. package/lib/locale/lang/en-US.umd.js +7 -0
  51. package/lib/locale/lang/es-ES.js +7 -0
  52. package/lib/locale/lang/es-ES.min.js +1 -1
  53. package/lib/locale/lang/es-ES.umd.js +7 -0
  54. package/lib/locale/lang/fr-FR.js +7 -0
  55. package/lib/locale/lang/fr-FR.min.js +1 -1
  56. package/lib/locale/lang/fr-FR.umd.js +7 -0
  57. package/lib/locale/lang/hu-HU.js +7 -0
  58. package/lib/locale/lang/hu-HU.min.js +1 -1
  59. package/lib/locale/lang/hu-HU.umd.js +7 -0
  60. package/lib/locale/lang/hy-AM.js +7 -0
  61. package/lib/locale/lang/hy-AM.min.js +1 -1
  62. package/lib/locale/lang/hy-AM.umd.js +7 -0
  63. package/lib/locale/lang/id-ID.js +7 -0
  64. package/lib/locale/lang/id-ID.min.js +1 -1
  65. package/lib/locale/lang/id-ID.umd.js +7 -0
  66. package/lib/locale/lang/it-IT.js +7 -0
  67. package/lib/locale/lang/it-IT.min.js +1 -1
  68. package/lib/locale/lang/it-IT.umd.js +7 -0
  69. package/lib/locale/lang/ja-JP.js +7 -0
  70. package/lib/locale/lang/ja-JP.min.js +1 -1
  71. package/lib/locale/lang/ja-JP.umd.js +7 -0
  72. package/lib/locale/lang/ko-KR.js +7 -0
  73. package/lib/locale/lang/ko-KR.min.js +1 -1
  74. package/lib/locale/lang/ko-KR.umd.js +7 -0
  75. package/lib/locale/lang/ms-MY.js +7 -0
  76. package/lib/locale/lang/ms-MY.min.js +1 -1
  77. package/lib/locale/lang/ms-MY.umd.js +7 -0
  78. package/lib/locale/lang/nb-NO.js +7 -0
  79. package/lib/locale/lang/nb-NO.min.js +1 -1
  80. package/lib/locale/lang/nb-NO.umd.js +7 -0
  81. package/lib/locale/lang/pt-BR.js +7 -0
  82. package/lib/locale/lang/pt-BR.min.js +1 -1
  83. package/lib/locale/lang/pt-BR.umd.js +7 -0
  84. package/lib/locale/lang/ru-RU.js +7 -0
  85. package/lib/locale/lang/ru-RU.min.js +1 -1
  86. package/lib/locale/lang/ru-RU.umd.js +7 -0
  87. package/lib/locale/lang/th-TH.js +7 -0
  88. package/lib/locale/lang/th-TH.min.js +1 -1
  89. package/lib/locale/lang/th-TH.umd.js +7 -0
  90. package/lib/locale/lang/ug-CN.js +7 -0
  91. package/lib/locale/lang/ug-CN.min.js +1 -1
  92. package/lib/locale/lang/ug-CN.umd.js +7 -0
  93. package/lib/locale/lang/uk-UA.js +7 -0
  94. package/lib/locale/lang/uk-UA.min.js +1 -1
  95. package/lib/locale/lang/uk-UA.umd.js +7 -0
  96. package/lib/locale/lang/uz-UZ.js +7 -0
  97. package/lib/locale/lang/uz-UZ.min.js +1 -1
  98. package/lib/locale/lang/uz-UZ.umd.js +7 -0
  99. package/lib/locale/lang/vi-VN.js +7 -0
  100. package/lib/locale/lang/vi-VN.min.js +1 -1
  101. package/lib/locale/lang/vi-VN.umd.js +7 -0
  102. package/lib/locale/lang/zh-CHT.js +7 -0
  103. package/lib/locale/lang/zh-CHT.min.js +1 -1
  104. package/lib/locale/lang/zh-CHT.umd.js +7 -0
  105. package/lib/locale/lang/zh-CN.js +7 -0
  106. package/lib/locale/lang/zh-CN.min.js +1 -1
  107. package/lib/locale/lang/zh-CN.umd.js +7 -0
  108. package/lib/style.css +1 -1
  109. package/lib/style.min.css +1 -1
  110. package/lib/table/module/export/mixin.js +26 -3
  111. package/lib/table/module/export/mixin.min.js +1 -1
  112. package/lib/table/render/index.js +62 -18
  113. package/lib/table/render/index.min.js +1 -1
  114. package/lib/table/src/header.js +7 -3
  115. package/lib/table/src/header.min.js +1 -1
  116. package/lib/table/src/methods.js +6 -1
  117. package/lib/table/src/methods.min.js +1 -1
  118. package/lib/table/src/table.js +25 -2
  119. package/lib/table/src/table.min.js +1 -1
  120. package/lib/table/style/style.css +10 -5
  121. package/lib/table/style/style.min.css +1 -1
  122. package/lib/ui/index.js +1 -1
  123. package/lib/ui/index.min.js +1 -1
  124. package/lib/ui/src/log.js +1 -1
  125. package/lib/ui/src/log.min.js +1 -1
  126. package/lib/vxe-table/style/style.css +10 -5
  127. package/lib/vxe-table/style/style.min.css +1 -1
  128. package/package.json +2 -2
  129. package/packages/locale/lang/ar-EG.ts +7 -0
  130. package/packages/locale/lang/de-DE.ts +7 -0
  131. package/packages/locale/lang/en-US.ts +7 -0
  132. package/packages/locale/lang/es-ES.ts +7 -0
  133. package/packages/locale/lang/fr-FR.ts +7 -0
  134. package/packages/locale/lang/hu-HU.ts +7 -0
  135. package/packages/locale/lang/hy-AM.ts +7 -0
  136. package/packages/locale/lang/id-ID.ts +7 -0
  137. package/packages/locale/lang/it-IT.ts +7 -0
  138. package/packages/locale/lang/ja-JP.ts +7 -0
  139. package/packages/locale/lang/ko-KR.ts +7 -0
  140. package/packages/locale/lang/ms-MY.ts +7 -0
  141. package/packages/locale/lang/nb-NO.ts +7 -0
  142. package/packages/locale/lang/pt-BR.ts +7 -0
  143. package/packages/locale/lang/ru-RU.ts +7 -0
  144. package/packages/locale/lang/th-TH.ts +7 -0
  145. package/packages/locale/lang/ug-CN.ts +7 -0
  146. package/packages/locale/lang/uk-UA.ts +7 -0
  147. package/packages/locale/lang/uz-UZ.ts +7 -0
  148. package/packages/locale/lang/vi-VN.ts +7 -0
  149. package/packages/locale/lang/zh-CHT.ts +7 -0
  150. package/packages/locale/lang/zh-CN.ts +7 -0
  151. package/packages/table/module/export/mixin.ts +22 -3
  152. package/packages/table/render/index.ts +46 -18
  153. package/packages/table/src/header.ts +6 -3
  154. package/packages/table/src/methods.ts +29 -4
  155. package/packages/table/src/table.ts +31 -3
  156. package/styles/components/table.scss +8 -4
  157. /package/es/{iconfont.1781257629862.ttf → iconfont.1781753790081.ttf} +0 -0
  158. /package/es/{iconfont.1781257629862.woff → iconfont.1781753790081.woff} +0 -0
  159. /package/es/{iconfont.1781257629862.woff2 → iconfont.1781753790081.woff2} +0 -0
  160. /package/lib/{iconfont.1781257629862.ttf → iconfont.1781753790081.ttf} +0 -0
  161. /package/lib/{iconfont.1781257629862.woff → iconfont.1781753790081.woff} +0 -0
  162. /package/lib/{iconfont.1781257629862.woff2 → iconfont.1781753790081.woff2} +0 -0
@@ -478,7 +478,7 @@ function toHtml($xeTable, opts, columns, datas) {
478
478
  const internalData = $xeTable;
479
479
  const { id, border, treeConfig, headerAlign: allHeaderAlign, align: allAlign, footerAlign: allFooterAlign, showOverflow: allColumnOverflow, showHeaderOverflow: allColumnHeaderOverflow } = props;
480
480
  const { isAllSelected, isIndeterminate } = reactData;
481
- const { mergeBodyCellMaps } = internalData;
481
+ const { mergeBodyCellMaps, mergeFooterCellMaps } = internalData;
482
482
  const treeOpts = $xeTable.computeTreeOpts;
483
483
  const { print: isPrint, isHeader, isFooter, isColgroup, isMerge, colgroups, original } = opts;
484
484
  const allCls = 'check-all';
@@ -616,15 +616,34 @@ function toHtml($xeTable, opts, columns, datas) {
616
616
  const footers = getFooterData($xeTable, opts, footerTableData);
617
617
  if (footers.length) {
618
618
  tables.push('<tfoot>');
619
- footers.forEach((row) => {
619
+ footers.forEach((row, rIndex) => {
620
620
  tables.push(`<tr>${columns.map(column => {
621
621
  const footAlign = column.footerAlign || column.align || allFooterAlign || allAlign;
622
622
  const classNames = hasEllipsis($xeTable, column, 'showOverflow', allColumnOverflow) ? ['col--ellipsis'] : [];
623
623
  const cellValue = getFooterCellValue($xeTable, opts, row, column);
624
+ let rowSpan = 1;
625
+ let colSpan = 1;
626
+ if (isMerge) {
627
+ const _rowIndex = rIndex;
628
+ const _columnIndex = $xeTable.getVTColumnIndex(column);
629
+ const spanRest = mergeFooterCellMaps[`${_rowIndex}:${_columnIndex}`];
630
+ if (spanRest) {
631
+ const { rowspan, colspan } = spanRest;
632
+ if (!rowspan || !colspan) {
633
+ return '';
634
+ }
635
+ if (rowspan > 1) {
636
+ rowSpan = rowspan;
637
+ }
638
+ if (colspan > 1) {
639
+ colSpan = colspan;
640
+ }
641
+ }
642
+ }
624
643
  if (footAlign) {
625
644
  classNames.push(`col--${footAlign}`);
626
645
  }
627
- return `<td class="${classNames.join(' ')}" title="${cellValue}"><div ${isPrint ? '' : `style="width: ${column.renderWidth}px"`}>${formatText(cellValue, true)}</div></td>`;
646
+ return `<td class="${classNames.join(' ')}" rowspan="${rowSpan}" colspan="${colSpan}" title="${cellValue}"><div ${isPrint ? '' : `style="width: ${column.renderWidth}px"`}>${formatText(cellValue, true)}</div></td>`;
628
647
  }).join('')}</tr>`);
629
648
  });
630
649
  tables.push('</tfoot>');
@@ -825,14 +825,14 @@ function handleSetTreeSelectValue(renderOpts, params) {
825
825
  */
826
826
  renderer.mixin({
827
827
  input: {
828
- tableAutoFocus: 'input',
828
+ tableAutoFocus: true,
829
829
  renderTableEdit: nativeEditRender,
830
830
  renderTableDefault: nativeEditRender,
831
831
  renderTableFilter: nativeFilterRender,
832
832
  tableFilterDefaultMethod: handleInputFilterMethod
833
833
  },
834
834
  textarea: {
835
- tableAutoFocus: 'textarea',
835
+ tableAutoFocus: true,
836
836
  renderTableEdit: nativeEditRender
837
837
  },
838
838
  select: {
@@ -876,7 +876,7 @@ renderer.mixin({
876
876
  tableExportMethod: handleExportSelectMethod
877
877
  },
878
878
  VxeInput: {
879
- tableAutoFocus: 'input',
879
+ tableAutoFocus: true,
880
880
  renderTableEdit: defaultEditRender,
881
881
  renderTableCell(h, renderOpts, params) {
882
882
  const { props = {} } = renderOpts;
@@ -916,7 +916,7 @@ renderer.mixin({
916
916
  }
917
917
  },
918
918
  VxeNumberInput: {
919
- tableAutoFocus: 'input',
919
+ tableAutoFocus: true,
920
920
  renderTableEdit: defaultEditRender,
921
921
  renderTableCell: handleNumberCell,
922
922
  renderTableFooter(h, renderOpts, params) {
@@ -968,7 +968,7 @@ renderer.mixin({
968
968
  }
969
969
  },
970
970
  VxeDatePicker: {
971
- tableAutoFocus: 'input',
971
+ tableAutoFocus: true,
972
972
  renderTableEdit: defaultEditRender,
973
973
  renderTableCell(h, renderOpts, params) {
974
974
  const props = renderOpts.props || {};
@@ -994,7 +994,7 @@ renderer.mixin({
994
994
  tableFilterDefaultMethod: handleFilterMethod
995
995
  },
996
996
  VxeDateRangePicker: {
997
- tableAutoFocus: 'input',
997
+ tableAutoFocus: true,
998
998
  renderTableEdit(h, renderOpts, params) {
999
999
  const { startField, endField } = renderOpts;
1000
1000
  const { $table, row, column } = params;
@@ -1100,7 +1100,7 @@ renderer.mixin({
1100
1100
  }
1101
1101
  },
1102
1102
  VxeTextarea: {
1103
- tableAutoFocus: 'textarea',
1103
+ tableAutoFocus: true,
1104
1104
  renderTableDefault: defaultEditRender,
1105
1105
  renderTableEdit: defaultEditRender
1106
1106
  },
@@ -1119,7 +1119,7 @@ renderer.mixin({
1119
1119
  }
1120
1120
  },
1121
1121
  VxeSelect: {
1122
- tableAutoFocus: 'input',
1122
+ tableAutoFocus: true,
1123
1123
  renderTableEdit: defaultSelectEditRender,
1124
1124
  renderTableDefault: defaultSelectEditRender,
1125
1125
  renderTableCell(h, renderOpts, params) {
@@ -1234,7 +1234,7 @@ renderer.mixin({
1234
1234
  tableExportMethod: handleExportSelectMethod
1235
1235
  },
1236
1236
  VxeTreeSelect: {
1237
- tableAutoFocus: 'input',
1237
+ tableAutoFocus: true,
1238
1238
  renderTableEdit: defaultTableOrTreeSelectEditRender,
1239
1239
  renderTableCell(h, renderOpts, params) {
1240
1240
  const { options, optionGroups } = renderOpts;
@@ -1296,8 +1296,36 @@ renderer.mixin({
1296
1296
  tableCellPasteMethod: handleSetTreeSelectValue,
1297
1297
  tableExportMethod: handleExportTreeSelectMethod
1298
1298
  },
1299
+ VxeCascader: {
1300
+ tableAutoFocus: true,
1301
+ renderTableEdit: defaultTableOrTreeSelectEditRender,
1302
+ renderTableCell(h, renderOpts, params) {
1303
+ const { options, optionGroups } = renderOpts;
1304
+ const { $table, row, column } = params;
1305
+ const opSize = options ? options.length : null;
1306
+ const ogSize = optionGroups ? optionGroups.length : null;
1307
+ const { cellResult } = $table.effectCellData(row, column, {
1308
+ key: 'render_table_cell',
1309
+ isChanged({ oldValue, cellValue }) {
1310
+ return oldValue && oldValue[0] === cellValue && oldValue[1] === opSize && oldValue[2] === ogSize;
1311
+ },
1312
+ setValue({ cellValue }) {
1313
+ return [cellValue, opSize, ogSize];
1314
+ },
1315
+ getResult({ cellValue }) {
1316
+ return handleTreeSelectCellValue(cellValue, renderOpts);
1317
+ }
1318
+ });
1319
+ // const cellResult = getTreeSelectCellValue(renderOpts, params)
1320
+ return getCellLabelVNs(h, renderOpts, params, cellResult);
1321
+ },
1322
+ tableCellFormatter: handleFormatTreeSelect,
1323
+ tableCellCopyMethod: handleFormatTreeSelect,
1324
+ tableCellPasteMethod: handleSetTreeSelectValue,
1325
+ tableExportMethod: handleExportTreeSelectMethod
1326
+ },
1299
1327
  VxeTableSelect: {
1300
- tableAutoFocus: 'input',
1328
+ tableAutoFocus: true,
1301
1329
  renderTableEdit: defaultTableOrTreeSelectEditRender,
1302
1330
  renderTableCell(h, renderOpts, params) {
1303
1331
  const { options, optionGroups } = renderOpts;
@@ -1325,7 +1353,7 @@ renderer.mixin({
1325
1353
  tableExportMethod: handleExportTreeSelectMethod
1326
1354
  },
1327
1355
  VxeColorPicker: {
1328
- tableAutoFocus: 'input',
1356
+ tableAutoFocus: true,
1329
1357
  renderTableEdit(h, renderOpts, params) {
1330
1358
  const { row, column } = params;
1331
1359
  const { options } = renderOpts;
@@ -1353,7 +1381,7 @@ renderer.mixin({
1353
1381
  }
1354
1382
  },
1355
1383
  VxeIconPicker: {
1356
- tableAutoFocus: 'input',
1384
+ tableAutoFocus: true,
1357
1385
  renderTableEdit(h, renderOpts, params) {
1358
1386
  const { row, column } = params;
1359
1387
  const { options } = renderOpts;
@@ -1439,7 +1467,7 @@ renderer.mixin({
1439
1467
  },
1440
1468
  // 以下已废弃
1441
1469
  $input: {
1442
- tableAutoFocus: '.vxe-input--inner',
1470
+ tableAutoFocus: 'input',
1443
1471
  renderTableEdit: oldEditRender,
1444
1472
  renderTableCell(h, renderOpts, params) {
1445
1473
  var _a;
@@ -1467,7 +1495,7 @@ renderer.mixin({
1467
1495
  tableFilterDefaultMethod: handleInputFilterMethod
1468
1496
  },
1469
1497
  $textarea: {
1470
- tableAutoFocus: '.vxe-textarea--inner'
1498
+ tableAutoFocus: 'textarea'
1471
1499
  },
1472
1500
  $button: {
1473
1501
  renderTableDefault: oldButtonEditRender
@@ -1476,7 +1504,7 @@ renderer.mixin({
1476
1504
  renderTableDefault: oldButtonsEditRender
1477
1505
  },
1478
1506
  $select: {
1479
- tableAutoFocus: '.vxe-input--inner',
1507
+ tableAutoFocus: 'input',
1480
1508
  renderTableEdit: oldSelectEditRender,
1481
1509
  renderTableDefault: oldSelectEditRender,
1482
1510
  renderTableCell(h, renderOpts, params) {
@@ -1498,13 +1526,13 @@ renderer.mixin({
1498
1526
  tableExportMethod: handleExportSelectMethod
1499
1527
  },
1500
1528
  $radio: {
1501
- tableAutoFocus: '.vxe-radio--input'
1529
+ tableAutoFocus: 'input'
1502
1530
  },
1503
1531
  $checkbox: {
1504
- tableAutoFocus: '.vxe-checkbox--input'
1532
+ tableAutoFocus: 'input'
1505
1533
  },
1506
1534
  $switch: {
1507
- tableAutoFocus: '.vxe-switch--button',
1535
+ tableAutoFocus: 'button',
1508
1536
  renderTableEdit: oldEditRender,
1509
1537
  renderTableDefault: oldEditRender
1510
1538
  }
@@ -215,6 +215,8 @@ function renderFilterRows(h, _vm, isOptimizeMode, cols) {
215
215
  const cellOpts = $xeTable.computeCellOpts;
216
216
  const defaultRowHeight = $xeTable.computeDefaultRowHeight;
217
217
  const headerCellOpts = $xeTable.computeHeaderCellOpts;
218
+ const floatingFilterOpts = $xeTable.computeFloatingFilterOpts;
219
+ const { cellClassName } = floatingFilterOpts;
218
220
  const currCellHeight = getCalcHeight(headerCellOpts.height) || defaultRowHeight;
219
221
  return cols.map((column, $columnIndex) => {
220
222
  const { type, showHeaderOverflow, headerAlign, align, filters, editRender, cellRender, floatingFilters, filterRender, slots } = column;
@@ -269,7 +271,7 @@ function renderFilterRows(h, _vm, isOptimizeMode, cols) {
269
271
  tcStyle.minHeight = `${currCellHeight}px`;
270
272
  }
271
273
  return h('th', {
272
- class: ['vxe-table--column vxe-header--column', colid, fixedHiddenColumn ? 'fixed--hidden' : 'fixed--visible', {
274
+ class: ['vxe-table--column vxe-header--column is--floating-filters', colid, fixedHiddenColumn ? 'fixed--hidden' : 'fixed--visible', {
273
275
  [`col--${headAlign}`]: headAlign,
274
276
  [`col--${type}`]: type,
275
277
  'col--last': isLastColumn,
@@ -285,7 +287,7 @@ function renderFilterRows(h, _vm, isOptimizeMode, cols) {
285
287
  attrs: thAttrs
286
288
  }, [
287
289
  h('div', {
288
- class: ['vxe-cell', {
290
+ class: ['vxe-cell', '' + (cellClassName || ''), {
289
291
  'c--title': showTitle,
290
292
  'c--tooltip': showTooltip,
291
293
  'c--ellipsis': showEllipsis
@@ -330,7 +332,8 @@ function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups, renderColumn
330
332
  rowVNs.push(h('tr', {
331
333
  key: 'ff',
332
334
  class: [
333
- 'vxe-header--row'
335
+ 'vxe-header--row is--floating-filters',
336
+ '' + (floatingFilterOpts.rowClassName || '')
334
337
  ]
335
338
  }, renderFilterRows(h, _vm, isOptimizeMode, renderColumnList)));
336
339
  }
@@ -2862,11 +2862,39 @@ function handleTooltip($xeTable, evnt, tipOpts, type, tdEl, overflowElem, tipEle
2862
2862
  const { tooltipStore } = reactData;
2863
2863
  const { column, row } = params;
2864
2864
  const { showAll, contentMethod } = tipOpts;
2865
- const customContent = contentMethod ? contentMethod(params) : null;
2866
- const useCustom = contentMethod && !XEUtils.eqNull(customContent);
2867
- const content = useCustom ? customContent : XEUtils.toString(column.type === 'html' ? tipOverEl.innerText : tipOverEl.textContent).trim();
2865
+ const cellText = XEUtils.toString(column.type === 'html' ? tipOverEl.innerText : tipOverEl.textContent).trim();
2868
2866
  const isOver = tipOverEl.scrollWidth > tipOverEl.clientWidth;
2869
- if (content && (showAll || useCustom || isOver)) {
2867
+ let isShow = false;
2868
+ let customContent = null;
2869
+ let content = '';
2870
+ if (contentMethod) {
2871
+ customContent = contentMethod(params);
2872
+ }
2873
+ // 是否全部展示
2874
+ if (showAll) {
2875
+ // 如果为 null 默认显示
2876
+ if (XEUtils.eqNull(customContent)) {
2877
+ isShow = true;
2878
+ content = cellText;
2879
+ }
2880
+ else if (customContent !== '' && customContent !== false) {
2881
+ // 如果为 '' | false 则不显示
2882
+ isShow = true;
2883
+ content = '' + customContent;
2884
+ }
2885
+ }
2886
+ else {
2887
+ // 如果为 null 使用默认逻辑
2888
+ if (XEUtils.eqNull(customContent)) {
2889
+ isShow = isOver;
2890
+ }
2891
+ else if (customContent !== '' && customContent !== false) {
2892
+ // 如果为 '' | false 则不显示
2893
+ isShow = true;
2894
+ }
2895
+ content = cellText;
2896
+ }
2897
+ if (isShow && content) {
2870
2898
  const tipContent = formatText(content);
2871
2899
  Object.assign(tooltipStore, {
2872
2900
  row,
@@ -529,6 +529,9 @@ export default {
529
529
  };
530
530
  },
531
531
  inject: {
532
+ $xeModal: {
533
+ default: null
534
+ },
532
535
  $xeTabs: {
533
536
  default: null
534
537
  },
@@ -548,7 +551,7 @@ export default {
548
551
  const reactData = createReactData();
549
552
  return Object.assign(Object.assign({ xID }, reactData), {
550
553
  // 私有属性
551
- reScrollFlag: 0, reLayoutFlag: 0, footFlag: 0, kfFlag: 0, mergeFooteCellFlag: 0, crossTableDragRowInfo: crossTableDragRowGlobal });
554
+ reScrollFlag: 0, reLayoutFlag: 0, footFlag: 0, kfFlag: 0, layoutReFlag: 0, mergeFooteCellFlag: 0, crossTableDragRowInfo: crossTableDragRowGlobal });
552
555
  },
553
556
  computed: Object.assign(Object.assign({}, {}), { tableId() {
554
557
  return this.computeTableId;
@@ -1363,11 +1366,21 @@ export default {
1363
1366
  const props = $xeTable;
1364
1367
  return Object.assign({}, getConfig().table.undoRedoHistoryConfig, props.undoRedoHistoryConfig);
1365
1368
  },
1366
- tabsResizeFlag() {
1369
+ combineTabsResizeFlag() {
1367
1370
  const $xeTable = this;
1368
1371
  const $xeTabs = $xeTable.$xeTabs;
1369
1372
  return $xeTabs ? $xeTabs.reactData.resizeFlag : null;
1370
1373
  },
1374
+ combineModalResizeFlag() {
1375
+ const $xeTable = this;
1376
+ const $xeModal = $xeTable.$xeModal;
1377
+ return $xeModal ? $xeModal.reactData.resizeFlag : null;
1378
+ },
1379
+ combineSplitterResizeFlag() {
1380
+ const $xeTable = this;
1381
+ const $xeSplitter = $xeTable.$xeSplitter;
1382
+ return $xeSplitter ? $xeSplitter.reactData.resizeFlag : null;
1383
+ },
1371
1384
  computeVxeLanguage() {
1372
1385
  return VxeUI.getLanguage();
1373
1386
  },
@@ -1498,7 +1511,16 @@ export default {
1498
1511
  });
1499
1512
  }
1500
1513
  },
1501
- tabsResizeFlag() {
1514
+ combineTabsResizeFlag() {
1515
+ this.layoutReFlag++;
1516
+ },
1517
+ combineModalResizeFlag() {
1518
+ this.layoutReFlag++;
1519
+ },
1520
+ combineSplitterResizeFlag() {
1521
+ this.layoutReFlag++;
1522
+ },
1523
+ layoutReFlag() {
1502
1524
  this.handleGlobalResizeEvent();
1503
1525
  },
1504
1526
  mergeCells(value) {
@@ -1923,6 +1923,7 @@
1923
1923
  .vxe-header--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-date-range-picker,
1924
1924
  .vxe-header--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-number-input,
1925
1925
  .vxe-header--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-ico-picker,
1926
+ .vxe-header--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-cascader,
1926
1927
  .vxe-footer--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-input,
1927
1928
  .vxe-footer--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-textarea,
1928
1929
  .vxe-footer--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-select,
@@ -1930,14 +1931,16 @@
1930
1931
  .vxe-footer--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-date-picker,
1931
1932
  .vxe-footer--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-date-range-picker,
1932
1933
  .vxe-footer--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-number-input,
1933
- .vxe-footer--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-ico-picker {
1934
+ .vxe-footer--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-ico-picker,
1935
+ .vxe-footer--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-cascader {
1934
1936
  width: 100%;
1935
1937
  }
1936
1938
 
1937
1939
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-default-input, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-default-textarea, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-default-select {
1938
1940
  width: 100%;
1939
1941
  }
1940
- .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-input, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-textarea, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-select, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-tree-select, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-date-picker, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-date-range-picker, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-number-input, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-ico-picker {
1942
+ .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-input, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-textarea, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-select, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-tree-select, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-date-picker, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-date-range-picker, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-number-input, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-ico-picker,
1943
+ .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper .vxe-cascader {
1941
1944
  width: 100%;
1942
1945
  }
1943
1946
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-row-group--tree-node .vxe-default-input,
@@ -1950,7 +1953,8 @@
1950
1953
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-row-group--tree-node .vxe-date-picker,
1951
1954
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-row-group--tree-node .vxe-date-range-picker,
1952
1955
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-row-group--tree-node .vxe-number-input,
1953
- .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-row-group--tree-node .vxe-ico-picker, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-default-input,
1956
+ .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-row-group--tree-node .vxe-ico-picker,
1957
+ .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-row-group--tree-node .vxe-cascader, .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-default-input,
1954
1958
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-default-textarea,
1955
1959
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-default-select,
1956
1960
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-input,
@@ -1960,14 +1964,15 @@
1960
1964
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-date-picker,
1961
1965
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-date-range-picker,
1962
1966
  .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-number-input,
1963
- .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-ico-picker {
1967
+ .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-ico-picker,
1968
+ .vxe-body--column.fixed--width > .vxe-cell > .vxe-cell--wrapper > .vxe-cell--tree-node .vxe-cascader {
1964
1969
  width: 100%;
1965
1970
  }
1966
1971
 
1967
1972
  .vxe-table--filter-template > .vxe-default-input, .vxe-table--filter-template > .vxe-default-textarea, .vxe-table--filter-template > .vxe-default-select {
1968
1973
  width: 100%;
1969
1974
  }
1970
- .vxe-table--filter-template > .vxe-input, .vxe-table--filter-template > .vxe-textarea, .vxe-table--filter-template > .vxe-select, .vxe-table--filter-template > .vxe-tree-select, .vxe-table--filter-template > .vxe-date-picker, .vxe-table--filter-template > .vxe-date-range-picker, .vxe-table--filter-template > .vxe-number-input, .vxe-table--filter-template > .vxe-ico-picker {
1975
+ .vxe-table--filter-template > .vxe-input, .vxe-table--filter-template > .vxe-textarea, .vxe-table--filter-template > .vxe-select, .vxe-table--filter-template > .vxe-tree-select, .vxe-table--filter-template > .vxe-date-picker, .vxe-table--filter-template > .vxe-date-range-picker, .vxe-table--filter-template > .vxe-number-input, .vxe-table--filter-template > .vxe-ico-picker, .vxe-table--filter-template > .vxe-cascader {
1971
1976
  width: 100%;
1972
1977
  }
1973
1978