vxe-table 4.13.27 → 4.13.28

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 (39) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/style.css +1 -1
  4. package/es/style.min.css +1 -1
  5. package/es/table/module/filter/hook.js +1 -0
  6. package/es/table/src/table.js +64 -45
  7. package/es/table/style.css +6 -0
  8. package/es/table/style.min.css +1 -1
  9. package/es/ui/index.js +1 -1
  10. package/es/ui/src/log.js +1 -1
  11. package/es/vxe-table/style.css +6 -0
  12. package/es/vxe-table/style.min.css +1 -1
  13. package/lib/index.css +1 -1
  14. package/lib/index.min.css +1 -1
  15. package/lib/index.umd.js +8 -6
  16. package/lib/index.umd.min.js +1 -1
  17. package/lib/style.css +1 -1
  18. package/lib/style.min.css +1 -1
  19. package/lib/table/module/filter/hook.js +1 -0
  20. package/lib/table/src/table.js +5 -4
  21. package/lib/table/src/table.min.js +1 -1
  22. package/lib/table/style/style.css +6 -0
  23. package/lib/table/style/style.min.css +1 -1
  24. package/lib/ui/index.js +1 -1
  25. package/lib/ui/index.min.js +1 -1
  26. package/lib/ui/src/log.js +1 -1
  27. package/lib/ui/src/log.min.js +1 -1
  28. package/lib/vxe-table/style/style.css +6 -0
  29. package/lib/vxe-table/style/style.min.css +1 -1
  30. package/package.json +1 -1
  31. package/packages/table/module/filter/hook.ts +1 -0
  32. package/packages/table/src/table.ts +65 -45
  33. package/styles/components/table.scss +14 -0
  34. /package/es/{iconfont.1747176259693.ttf → iconfont.1747194464593.ttf} +0 -0
  35. /package/es/{iconfont.1747176259693.woff → iconfont.1747194464593.woff} +0 -0
  36. /package/es/{iconfont.1747176259693.woff2 → iconfont.1747194464593.woff2} +0 -0
  37. /package/lib/{iconfont.1747176259693.ttf → iconfont.1747194464593.ttf} +0 -0
  38. /package/lib/{iconfont.1747176259693.woff → iconfont.1747194464593.woff} +0 -0
  39. /package/lib/{iconfont.1747176259693.woff2 → iconfont.1747194464593.woff2} +0 -0
@@ -9,7 +9,7 @@ import TableHeaderComponent from './header';
9
9
  import TableFooterComponent from './footer';
10
10
  import tableProps from './props';
11
11
  import tableEmits from './emits';
12
- import { getRowUniqueId, clearTableAllStatus, hasDeepKey, getRowkey, getRowid, rowToVisible, colToVisible, getCellValue, setCellValue, handleRowidOrRow, handleFieldOrColumn, toTreePathSeq, restoreScrollLocation, getRootColumn, getRefElem, getColReMinWidth, createHandleUpdateRowId, createHandleGetRowId, getCellHeight } from './util';
12
+ import { getRowUniqueId, clearTableAllStatus, toFilters, hasDeepKey, getRowkey, getRowid, rowToVisible, colToVisible, getCellValue, setCellValue, handleRowidOrRow, handleFieldOrColumn, toTreePathSeq, restoreScrollLocation, getRootColumn, getRefElem, getColReMinWidth, createHandleUpdateRowId, createHandleGetRowId, getCellHeight } from './util';
13
13
  import { getSlotVNs } from '../../ui/src/vn';
14
14
  import { warnLog, errLog } from '../../ui/src/log';
15
15
  import TableCustomPanelComponent from '../module/custom/panel';
@@ -882,7 +882,7 @@ export default defineComponent({
882
882
  };
883
883
  const getNextSortOrder = (column) => {
884
884
  const sortOpts = computeSortOpts.value;
885
- const { orders } = sortOpts;
885
+ const { orders = [] } = sortOpts;
886
886
  const currOrder = column.order || null;
887
887
  const oIndex = orders.indexOf(currOrder) + 1;
888
888
  return orders[oIndex < orders.length ? oIndex : 0];
@@ -1291,6 +1291,53 @@ export default defineComponent({
1291
1291
  }
1292
1292
  return rest;
1293
1293
  };
1294
+ const handleSortEvent = (evnt, sortConfs, isUpdate) => {
1295
+ const sortOpts = computeSortOpts.value;
1296
+ const { multiple, remote, orders } = sortOpts;
1297
+ if (!XEUtils.isArray(sortConfs)) {
1298
+ sortConfs = [sortConfs];
1299
+ }
1300
+ if (sortConfs && sortConfs.length) {
1301
+ if (!multiple) {
1302
+ sortConfs = [sortConfs[0]];
1303
+ clearAllSort();
1304
+ }
1305
+ let firstColumn = null;
1306
+ sortConfs.forEach((confs, index) => {
1307
+ let { field, order } = confs;
1308
+ let column = field;
1309
+ if (XEUtils.isString(field)) {
1310
+ column = $xeTable.getColumnByField(field);
1311
+ }
1312
+ if (!firstColumn) {
1313
+ firstColumn = column;
1314
+ }
1315
+ if (column && column.sortable) {
1316
+ if (orders && orders.indexOf(order) === -1) {
1317
+ order = getNextSortOrder(column);
1318
+ }
1319
+ if (column.order !== order) {
1320
+ column.order = order;
1321
+ }
1322
+ column.sortTime = Date.now() + index;
1323
+ }
1324
+ });
1325
+ if (isUpdate) {
1326
+ if (!remote) {
1327
+ $xeTable.handleTableData(true);
1328
+ }
1329
+ }
1330
+ if (evnt) {
1331
+ $xeTable.handleColumnSortEvent(evnt, firstColumn);
1332
+ }
1333
+ return nextTick().then(() => {
1334
+ updateRowOffsetTop();
1335
+ $xeTable.updateCellAreas();
1336
+ return updateStyle();
1337
+ });
1338
+ }
1339
+ return nextTick();
1340
+ };
1294
1341
  const clearAllSort = () => {
1295
1342
  const { tableFullColumn } = internalData;
1296
1343
  tableFullColumn.forEach((column) => {
@@ -5575,49 +5622,11 @@ export default defineComponent({
5575
5622
  return nextTick();
5576
5623
  },
5577
5624
  setSort(sortConfs, isUpdate) {
5578
- const sortOpts = computeSortOpts.value;
5579
- const { multiple, remote, orders } = sortOpts;
5580
- if (!XEUtils.isArray(sortConfs)) {
5581
- sortConfs = [sortConfs];
5582
- }
5583
- if (sortConfs && sortConfs.length) {
5584
- if (!multiple) {
5585
- sortConfs = [sortConfs[0]];
5586
- clearAllSort();
5587
- }
5588
- let firstColumn = null;
5589
- sortConfs.forEach((confs, index) => {
5590
- let { field, order } = confs;
5591
- let column = field;
5592
- if (XEUtils.isString(field)) {
5593
- column = tableMethods.getColumnByField(field);
5594
- }
5595
- if (!firstColumn) {
5596
- firstColumn = column;
5597
- }
5598
- if (column && column.sortable) {
5599
- if (orders && orders.indexOf(order) === -1) {
5600
- order = getNextSortOrder(column);
5601
- }
5602
- if (column.order !== order) {
5603
- column.order = order;
5604
- }
5605
- column.sortTime = Date.now() + index;
5606
- }
5607
- });
5608
- if (isUpdate) {
5609
- if (!remote) {
5610
- $xeTable.handleTableData(true);
5611
- }
5612
- $xeTable.handleColumnSortEvent(new Event('click'), firstColumn);
5613
- }
5614
- return nextTick().then(() => {
5615
- updateRowOffsetTop();
5616
- tableMethods.updateCellAreas();
5617
- return updateStyle();
5618
- });
5619
- }
5620
- return nextTick();
5625
+ // 已废弃,即将去掉事件触发 new Event('click') -> null
5626
+ return handleSortEvent(new Event('click'), sortConfs, isUpdate);
5627
+ },
5628
+ setSortByEvent(evnt, sortConfs, isUpdate) {
5629
+ return handleSortEvent(evnt, sortConfs, isUpdate);
5621
5630
  },
5622
5631
  /**
5623
5632
  * 清空指定列的排序条件
@@ -5702,6 +5711,16 @@ export default defineComponent({
5702
5711
  }
5703
5712
  return sortList;
5704
5713
  },
5714
+ setFilterByEvent(evnt, fieldOrColumn, options, isUpdate) {
5715
+ const column = handleFieldOrColumn($xeTable, fieldOrColumn);
5716
+ if (column && column.filters) {
5717
+ column.filters = toFilters(options || []);
5718
+ if (isUpdate) {
5719
+ return $xeTable.handleColumnConfirmFilter(column, evnt);
5720
+ }
5721
+ }
5722
+ return nextTick();
5723
+ },
5705
5724
  /**
5706
5725
  * 关闭筛选
5707
5726
  * @param {Event} evnt 事件
@@ -2550,6 +2550,12 @@
2550
2550
  .vxe-table--render-default .vxe-footer--column.col--right > .vxe-cell {
2551
2551
  justify-content: right;
2552
2552
  }
2553
+ .vxe-table--render-default .vxe-header--column.col--ellipsis.col--center .vxe-cell--wrapper {
2554
+ justify-content: center;
2555
+ }
2556
+ .vxe-table--render-default .vxe-header--column.col--ellipsis.col--right .vxe-cell--wrapper {
2557
+ justify-content: right;
2558
+ }
2553
2559
  .vxe-table--render-default .vxe-header--column.col--ellipsis.col--center .vxe-cell,
2554
2560
  .vxe-table--render-default .vxe-footer--column.col--ellipsis.col--center .vxe-cell {
2555
2561
  justify-content: center;