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'
@@ -987,7 +987,7 @@ export default defineComponent({
987
987
 
988
988
  const getNextSortOrder = (column: VxeTableDefines.ColumnInfo) => {
989
989
  const sortOpts = computeSortOpts.value
990
- const { orders } = sortOpts
990
+ const { orders = [] } = sortOpts
991
991
  const currOrder = column.order || null
992
992
  const oIndex = orders.indexOf(currOrder) + 1
993
993
  return orders[oIndex < orders.length ? oIndex : 0]
@@ -1399,6 +1399,54 @@ export default defineComponent({
1399
1399
  return rest
1400
1400
  }
1401
1401
 
1402
+ const handleSortEvent = (evnt: Event | null, sortConfs: VxeTableDefines.SortConfs | VxeTableDefines.SortConfs[], isUpdate?: boolean) => {
1403
+ const sortOpts = computeSortOpts.value
1404
+ const { multiple, remote, orders } = sortOpts
1405
+ if (!XEUtils.isArray(sortConfs)) {
1406
+ sortConfs = [sortConfs]
1407
+ }
1408
+ if (sortConfs && sortConfs.length) {
1409
+ if (!multiple) {
1410
+ sortConfs = [sortConfs[0]]
1411
+ clearAllSort()
1412
+ }
1413
+ let firstColumn: any = null
1414
+ sortConfs.forEach((confs: any, index: number) => {
1415
+ let { field, order } = confs
1416
+ let column = field
1417
+ if (XEUtils.isString(field)) {
1418
+ column = $xeTable.getColumnByField(field)
1419
+ }
1420
+ if (!firstColumn) {
1421
+ firstColumn = column
1422
+ }
1423
+ if (column && column.sortable) {
1424
+ if (orders && orders.indexOf(order) === -1) {
1425
+ order = getNextSortOrder(column)
1426
+ }
1427
+ if (column.order !== order) {
1428
+ column.order = order
1429
+ }
1430
+ column.sortTime = Date.now() + index
1431
+ }
1432
+ })
1433
+ if (isUpdate) {
1434
+ if (!remote) {
1435
+ $xeTable.handleTableData(true)
1436
+ }
1437
+ }
1438
+ if (evnt) {
1439
+ $xeTable.handleColumnSortEvent(evnt, firstColumn)
1440
+ }
1441
+ return nextTick().then(() => {
1442
+ updateRowOffsetTop()
1443
+ $xeTable.updateCellAreas()
1444
+ return updateStyle()
1445
+ })
1446
+ }
1447
+ return nextTick()
1448
+ }
1449
+
1402
1450
  const clearAllSort = () => {
1403
1451
  const { tableFullColumn } = internalData
1404
1452
  tableFullColumn.forEach((column) => {
@@ -5723,49 +5771,11 @@ export default defineComponent({
5723
5771
  return nextTick()
5724
5772
  },
5725
5773
  setSort (sortConfs, isUpdate) {
5726
- const sortOpts = computeSortOpts.value
5727
- const { multiple, remote, orders } = sortOpts
5728
- if (!XEUtils.isArray(sortConfs)) {
5729
- sortConfs = [sortConfs]
5730
- }
5731
- if (sortConfs && sortConfs.length) {
5732
- if (!multiple) {
5733
- sortConfs = [sortConfs[0]]
5734
- clearAllSort()
5735
- }
5736
- let firstColumn: any = null
5737
- sortConfs.forEach((confs: any, index: number) => {
5738
- let { field, order } = confs
5739
- let column = field
5740
- if (XEUtils.isString(field)) {
5741
- column = tableMethods.getColumnByField(field)
5742
- }
5743
- if (!firstColumn) {
5744
- firstColumn = column
5745
- }
5746
- if (column && column.sortable) {
5747
- if (orders && orders.indexOf(order) === -1) {
5748
- order = getNextSortOrder(column)
5749
- }
5750
- if (column.order !== order) {
5751
- column.order = order
5752
- }
5753
- column.sortTime = Date.now() + index
5754
- }
5755
- })
5756
- if (isUpdate) {
5757
- if (!remote) {
5758
- $xeTable.handleTableData(true)
5759
- }
5760
- $xeTable.handleColumnSortEvent(new Event('click'), firstColumn)
5761
- }
5762
- return nextTick().then(() => {
5763
- updateRowOffsetTop()
5764
- tableMethods.updateCellAreas()
5765
- return updateStyle()
5766
- })
5767
- }
5768
- return nextTick()
5774
+ // 已废弃,即将去掉事件触发 new Event('click') -> null
5775
+ return handleSortEvent(new Event('click'), sortConfs, isUpdate)
5776
+ },
5777
+ setSortByEvent (evnt, sortConfs, isUpdate) {
5778
+ return handleSortEvent(evnt, sortConfs, isUpdate)
5769
5779
  },
5770
5780
  /**
5771
5781
  * 清空指定列的排序条件
@@ -5847,6 +5857,16 @@ export default defineComponent({
5847
5857
  }
5848
5858
  return sortList
5849
5859
  },
5860
+ setFilterByEvent (evnt, fieldOrColumn, options, isUpdate) {
5861
+ const column = handleFieldOrColumn($xeTable, fieldOrColumn)
5862
+ if (column && column.filters) {
5863
+ column.filters = toFilters(options || [])
5864
+ if (isUpdate) {
5865
+ return $xeTable.handleColumnConfirmFilter(column, evnt)
5866
+ }
5867
+ }
5868
+ return nextTick()
5869
+ },
5850
5870
  /**
5851
5871
  * 关闭筛选
5852
5872
  * @param {Event} evnt 事件
@@ -1050,6 +1050,20 @@ $btnThemeList: (
1050
1050
  }
1051
1051
  }
1052
1052
  }
1053
+ .vxe-header--column {
1054
+ &.col--ellipsis {
1055
+ &.col--center {
1056
+ .vxe-cell--wrapper {
1057
+ justify-content: center;
1058
+ }
1059
+ }
1060
+ &.col--right {
1061
+ .vxe-cell--wrapper {
1062
+ justify-content: right;
1063
+ }
1064
+ }
1065
+ }
1066
+ }
1053
1067
  .vxe-header--column,
1054
1068
  .vxe-footer--column {
1055
1069
  &.col--ellipsis {