vxe-table 3.15.53 → 3.15.56

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 (140) hide show
  1. package/es/grid/src/grid.js +31 -0
  2. package/es/locale/lang/ar-EG.js +22 -2
  3. package/es/locale/lang/de-DE.js +22 -2
  4. package/es/locale/lang/en-US.js +23 -3
  5. package/es/locale/lang/es-ES.js +22 -2
  6. package/es/locale/lang/fr-FR.js +22 -2
  7. package/es/locale/lang/hu-HU.js +22 -2
  8. package/es/locale/lang/hy-AM.js +21 -1
  9. package/es/locale/lang/id-ID.js +22 -2
  10. package/es/locale/lang/it-IT.js +22 -2
  11. package/es/locale/lang/ja-JP.js +22 -2
  12. package/es/locale/lang/ko-KR.js +22 -2
  13. package/es/locale/lang/ms-MY.js +22 -2
  14. package/es/locale/lang/nb-NO.js +22 -2
  15. package/es/locale/lang/pt-BR.js +22 -2
  16. package/es/locale/lang/ru-RU.js +22 -2
  17. package/es/locale/lang/th-TH.js +22 -2
  18. package/es/locale/lang/ug-CN.js +22 -2
  19. package/es/locale/lang/uk-UA.js +22 -2
  20. package/es/locale/lang/uz-UZ.js +22 -2
  21. package/es/locale/lang/vi-VN.js +22 -2
  22. package/es/locale/lang/zh-CHT.js +22 -2
  23. package/es/locale/lang/zh-CN.js +21 -1
  24. package/es/style.css +1 -1
  25. package/es/table/src/columnInfo.js +9 -0
  26. package/es/table/src/methods.js +59 -17
  27. package/es/ui/index.js +2 -1
  28. package/es/ui/src/log.js +1 -1
  29. package/lib/grid/src/grid.js +48 -0
  30. package/lib/grid/src/grid.min.js +1 -1
  31. package/lib/index.umd.js +151 -20
  32. package/lib/index.umd.min.js +1 -1
  33. package/lib/locale/lang/ar-EG.js +22 -2
  34. package/lib/locale/lang/ar-EG.min.js +1 -1
  35. package/lib/locale/lang/ar-EG.umd.js +22 -2
  36. package/lib/locale/lang/de-DE.js +22 -2
  37. package/lib/locale/lang/de-DE.min.js +1 -1
  38. package/lib/locale/lang/de-DE.umd.js +22 -2
  39. package/lib/locale/lang/en-US.js +23 -3
  40. package/lib/locale/lang/en-US.min.js +1 -1
  41. package/lib/locale/lang/en-US.umd.js +23 -3
  42. package/lib/locale/lang/es-ES.js +22 -2
  43. package/lib/locale/lang/es-ES.min.js +1 -1
  44. package/lib/locale/lang/es-ES.umd.js +22 -2
  45. package/lib/locale/lang/fr-FR.js +22 -2
  46. package/lib/locale/lang/fr-FR.min.js +1 -1
  47. package/lib/locale/lang/fr-FR.umd.js +22 -2
  48. package/lib/locale/lang/hu-HU.js +22 -2
  49. package/lib/locale/lang/hu-HU.min.js +1 -1
  50. package/lib/locale/lang/hu-HU.umd.js +22 -2
  51. package/lib/locale/lang/hy-AM.js +21 -1
  52. package/lib/locale/lang/hy-AM.min.js +1 -1
  53. package/lib/locale/lang/hy-AM.umd.js +21 -1
  54. package/lib/locale/lang/id-ID.js +22 -2
  55. package/lib/locale/lang/id-ID.min.js +1 -1
  56. package/lib/locale/lang/id-ID.umd.js +22 -2
  57. package/lib/locale/lang/it-IT.js +22 -2
  58. package/lib/locale/lang/it-IT.min.js +1 -1
  59. package/lib/locale/lang/it-IT.umd.js +22 -2
  60. package/lib/locale/lang/ja-JP.js +22 -2
  61. package/lib/locale/lang/ja-JP.min.js +1 -1
  62. package/lib/locale/lang/ja-JP.umd.js +22 -2
  63. package/lib/locale/lang/ko-KR.js +22 -2
  64. package/lib/locale/lang/ko-KR.min.js +1 -1
  65. package/lib/locale/lang/ko-KR.umd.js +22 -2
  66. package/lib/locale/lang/ms-MY.js +22 -2
  67. package/lib/locale/lang/ms-MY.min.js +1 -1
  68. package/lib/locale/lang/ms-MY.umd.js +22 -2
  69. package/lib/locale/lang/nb-NO.js +22 -2
  70. package/lib/locale/lang/nb-NO.min.js +1 -1
  71. package/lib/locale/lang/nb-NO.umd.js +22 -2
  72. package/lib/locale/lang/pt-BR.js +22 -2
  73. package/lib/locale/lang/pt-BR.min.js +1 -1
  74. package/lib/locale/lang/pt-BR.umd.js +22 -2
  75. package/lib/locale/lang/ru-RU.js +22 -2
  76. package/lib/locale/lang/ru-RU.min.js +1 -1
  77. package/lib/locale/lang/ru-RU.umd.js +22 -2
  78. package/lib/locale/lang/th-TH.js +22 -2
  79. package/lib/locale/lang/th-TH.min.js +1 -1
  80. package/lib/locale/lang/th-TH.umd.js +22 -2
  81. package/lib/locale/lang/ug-CN.js +22 -2
  82. package/lib/locale/lang/ug-CN.min.js +1 -1
  83. package/lib/locale/lang/ug-CN.umd.js +22 -2
  84. package/lib/locale/lang/uk-UA.js +22 -2
  85. package/lib/locale/lang/uk-UA.min.js +1 -1
  86. package/lib/locale/lang/uk-UA.umd.js +22 -2
  87. package/lib/locale/lang/uz-UZ.js +22 -2
  88. package/lib/locale/lang/uz-UZ.min.js +1 -1
  89. package/lib/locale/lang/uz-UZ.umd.js +22 -2
  90. package/lib/locale/lang/vi-VN.js +22 -2
  91. package/lib/locale/lang/vi-VN.min.js +1 -1
  92. package/lib/locale/lang/vi-VN.umd.js +22 -2
  93. package/lib/locale/lang/zh-CHT.js +22 -2
  94. package/lib/locale/lang/zh-CHT.min.js +1 -1
  95. package/lib/locale/lang/zh-CHT.umd.js +22 -2
  96. package/lib/locale/lang/zh-CN.js +21 -1
  97. package/lib/locale/lang/zh-CN.min.js +1 -1
  98. package/lib/locale/lang/zh-CN.umd.js +21 -1
  99. package/lib/style.css +1 -1
  100. package/lib/table/src/columnInfo.js +12 -0
  101. package/lib/table/src/columnInfo.min.js +1 -1
  102. package/lib/table/src/methods.js +65 -17
  103. package/lib/table/src/methods.min.js +1 -1
  104. package/lib/ui/index.js +2 -1
  105. package/lib/ui/index.min.js +1 -1
  106. package/lib/ui/src/log.js +1 -1
  107. package/lib/ui/src/log.min.js +1 -1
  108. package/package.json +1 -1
  109. package/packages/grid/src/grid.ts +31 -0
  110. package/packages/locale/lang/ar-EG.ts +22 -2
  111. package/packages/locale/lang/de-DE.ts +22 -2
  112. package/packages/locale/lang/en-US.ts +23 -3
  113. package/packages/locale/lang/es-ES.ts +22 -2
  114. package/packages/locale/lang/fr-FR.ts +22 -2
  115. package/packages/locale/lang/hu-HU.ts +22 -2
  116. package/packages/locale/lang/hy-AM.ts +21 -1
  117. package/packages/locale/lang/id-ID.ts +22 -2
  118. package/packages/locale/lang/it-IT.ts +22 -2
  119. package/packages/locale/lang/ja-JP.ts +22 -2
  120. package/packages/locale/lang/ko-KR.ts +22 -2
  121. package/packages/locale/lang/ms-MY.ts +22 -2
  122. package/packages/locale/lang/nb-NO.ts +22 -2
  123. package/packages/locale/lang/pt-BR.ts +22 -2
  124. package/packages/locale/lang/ru-RU.ts +22 -2
  125. package/packages/locale/lang/th-TH.ts +22 -2
  126. package/packages/locale/lang/ug-CN.ts +22 -2
  127. package/packages/locale/lang/uk-UA.ts +22 -2
  128. package/packages/locale/lang/uz-UZ.ts +22 -2
  129. package/packages/locale/lang/vi-VN.ts +22 -2
  130. package/packages/locale/lang/zh-CHT.ts +22 -2
  131. package/packages/locale/lang/zh-CN.ts +21 -1
  132. package/packages/table/src/columnInfo.ts +11 -0
  133. package/packages/table/src/methods.ts +69 -16
  134. package/packages/ui/index.ts +1 -0
  135. /package/es/{iconfont.1751969867717.ttf → iconfont.1753525475408.ttf} +0 -0
  136. /package/es/{iconfont.1751969867717.woff → iconfont.1753525475408.woff} +0 -0
  137. /package/es/{iconfont.1751969867717.woff2 → iconfont.1753525475408.woff2} +0 -0
  138. /package/lib/{iconfont.1751969867717.ttf → iconfont.1753525475408.ttf} +0 -0
  139. /package/lib/{iconfont.1751969867717.woff → iconfont.1753525475408.woff} +0 -0
  140. /package/lib/{iconfont.1751969867717.woff2 → iconfont.1753525475408.woff2} +0 -0
@@ -2038,16 +2038,25 @@ function removeFooterMerges ($xeTable: VxeTableConstructor & VxeTablePrivateMeth
2038
2038
  }
2039
2039
 
2040
2040
  function handleSortEvent ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, evnt: Event | null, sortConfs: VxeTableDefines.SortConfs | VxeTableDefines.SortConfs[], isUpdate?: boolean) {
2041
+ const internalData = $xeTable as unknown as TableInternalData
2042
+
2043
+ const { tableFullColumn } = internalData
2041
2044
  const sortOpts = $xeTable.computeSortOpts
2042
2045
  const { multiple, remote, orders } = sortOpts
2043
2046
  if (!XEUtils.isArray(sortConfs)) {
2044
2047
  sortConfs = [sortConfs]
2045
2048
  }
2046
2049
  if (sortConfs && sortConfs.length) {
2050
+ const orderActiveMaps: Record<string, VxeTableDefines.ColumnInfo> = {}
2047
2051
  if (!multiple) {
2048
2052
  sortConfs = [sortConfs[0]]
2049
- clearAllSort($xeTable)
2053
+ tableFullColumn.forEach((column) => {
2054
+ if (column.order) {
2055
+ orderActiveMaps[column.id] = column
2056
+ }
2057
+ })
2050
2058
  }
2059
+ const sortColMpps: Record<string, VxeTableDefines.ColumnInfo> = {}
2051
2060
  let firstColumn: any = null
2052
2061
  sortConfs.forEach((confs: any, index: number) => {
2053
2062
  let { field, order } = confs
@@ -2066,8 +2075,16 @@ function handleSortEvent ($xeTable: VxeTableConstructor & VxeTablePrivateMethods
2066
2075
  column.order = order
2067
2076
  }
2068
2077
  column.sortTime = Date.now() + index
2078
+ sortColMpps[column.id] = column
2069
2079
  }
2070
2080
  })
2081
+ if (!multiple) {
2082
+ XEUtils.each(orderActiveMaps, (oaCol: VxeTableDefines.ColumnInfo, oaId) => {
2083
+ if (!sortColMpps[oaId]) {
2084
+ oaCol.order = null
2085
+ }
2086
+ })
2087
+ }
2071
2088
  if (isUpdate) {
2072
2089
  if (!remote) {
2073
2090
  $xeTable.handleTableData(true)
@@ -8742,13 +8759,12 @@ const Methods = {
8742
8759
  setSort (sortConfs: VxeTableDefines.SortConfs | VxeTableDefines.SortConfs[], isUpdate?: boolean) {
8743
8760
  const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
8744
8761
 
8745
- // 已废弃,即将去掉事件触发 new Event('click') -> null
8746
- return handleSortEvent($xeTable, new Event('click'), sortConfs, isUpdate)
8762
+ return handleSortEvent($xeTable, null, sortConfs, isUpdate)
8747
8763
  },
8748
- setSortByEvent (evnt: Event, sortConfs: VxeTableDefines.SortConfs | VxeTableDefines.SortConfs[], isUpdate?: boolean) {
8764
+ setSortByEvent (evnt: Event, sortConfs: VxeTableDefines.SortConfs | VxeTableDefines.SortConfs[]) {
8749
8765
  const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
8750
8766
 
8751
- return handleSortEvent($xeTable, evnt, sortConfs, isUpdate)
8767
+ return handleSortEvent($xeTable, evnt, sortConfs, true)
8752
8768
  },
8753
8769
  /**
8754
8770
  * 清空指定列的排序条件
@@ -8781,6 +8797,7 @@ const Methods = {
8781
8797
 
8782
8798
  const { tableFullColumn } = internalData
8783
8799
  const sortOpts = $xeTable.computeSortOpts
8800
+ const { multiple } = sortOpts
8784
8801
  const sortCols: VxeTableDefines.ColumnInfo[] = []
8785
8802
  let column: VxeTableDefines.ColumnInfo<any> | null = null
8786
8803
  if (evnt) {
@@ -8800,11 +8817,18 @@ const Methods = {
8800
8817
  if (!sortOpts.remote) {
8801
8818
  $xeTable.handleTableData(true)
8802
8819
  }
8803
- if (sortCols.length) {
8820
+
8821
+ if (!multiple) {
8822
+ column = sortCols[0]
8823
+ }
8824
+
8825
+ if (column) {
8826
+ $xeTable.handleColumnSortEvent(evnt, column)
8827
+ }
8828
+
8829
+ if (multiple && sortCols.length) {
8804
8830
  const params = { $table: $xeTable, $event: evnt, cols: sortCols, sortList: [] }
8805
8831
  $xeTable.dispatchEvent('clear-all-sort', params, evnt)
8806
- } else if (column) {
8807
- $xeTable.handleColumnSortEvent(evnt, column)
8808
8832
  }
8809
8833
  }
8810
8834
  return $xeTable.$nextTick().then(() => {
@@ -8838,15 +8862,13 @@ const Methods = {
8838
8862
  }
8839
8863
  return sortList
8840
8864
  },
8841
- setFilterByEvent (evnt: Event, fieldOrColumn: VxeColumnPropTypes.Field | VxeTableDefines.ColumnInfo<any>, options: VxeColumnPropTypes.FilterItem[], isUpdate?: boolean) {
8865
+ setFilterByEvent (evnt: Event, fieldOrColumn: VxeColumnPropTypes.Field | VxeTableDefines.ColumnInfo<any>, options: VxeColumnPropTypes.FilterItem[]) {
8842
8866
  const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
8843
8867
 
8844
8868
  const column = handleFieldOrColumn($xeTable, fieldOrColumn)
8845
8869
  if (column && column.filters) {
8846
8870
  column.filters = toFilters(options || [])
8847
- if (isUpdate) {
8848
- return $xeTable.handleColumnConfirmFilter(column, evnt)
8849
- }
8871
+ return $xeTable.handleColumnConfirmFilter(column, evnt)
8850
8872
  }
8851
8873
  return $xeTable.$nextTick()
8852
8874
  },
@@ -8898,6 +8920,7 @@ const Methods = {
8898
8920
  const { filterStore } = reactData
8899
8921
  const { tableFullColumn } = internalData
8900
8922
  const filterOpts = $xeTable.computeFilterOpts
8923
+ const { multiple } = filterOpts
8901
8924
  const filterCols: VxeTableDefines.ColumnInfo[] = []
8902
8925
  let column: VxeTableDefines.ColumnInfo<any> | null = null
8903
8926
  if (fieldOrColumn) {
@@ -8920,19 +8943,49 @@ const Methods = {
8920
8943
  style: null,
8921
8944
  options: [],
8922
8945
  column: null,
8923
- multiple: false,
8946
+ multiple: false, // 选项是覅多选
8924
8947
  visible: false
8925
8948
  })
8926
8949
  }
8950
+
8927
8951
  if (!filterOpts.remote) {
8928
8952
  $xeTable.updateData()
8929
8953
  }
8930
- if (filterCols.length) {
8954
+
8955
+ if (!multiple) {
8956
+ column = filterCols[0]
8957
+ }
8958
+
8959
+ if (column) {
8960
+ const filterList = () => $xeTable.getCheckedFilters()
8961
+ const values: any[] = []
8962
+ const datas: any[] = []
8963
+ column.filters.forEach((item: any) => {
8964
+ if (item.checked) {
8965
+ values.push(item.value)
8966
+ datas.push(item.data)
8967
+ }
8968
+ })
8969
+ const params = {
8970
+ $table: $xeTable,
8971
+ $event: evnt as Event,
8972
+ column,
8973
+ field: column.field,
8974
+ property: column.field,
8975
+ values,
8976
+ datas,
8977
+ filters: filterList,
8978
+ filterList
8979
+ }
8980
+ $xeTable.dispatchEvent('filter-change', params, evnt)
8981
+ $xeTable.dispatchEvent('clear-filter', params, evnt)
8982
+ }
8983
+
8984
+ if (multiple && filterCols.length) {
8931
8985
  const params = { $table: $xeTable, $event: evnt, cols: filterCols, filterList: [] }
8932
8986
  $xeTable.dispatchEvent('clear-all-filter', params, evnt)
8933
- } else if (column) {
8934
- $xeTable.dispatchEvent('clear-filter', { filterList: () => $xeTable.getCheckedFilters() }, evnt)
8935
8987
  }
8988
+
8936
8989
  return $xeTable.$nextTick()
8937
8990
  },
8938
8991
  /**
@@ -140,6 +140,7 @@ VxeUI.setConfig({
140
140
  // filterMethod: null,
141
141
  // destroyOnClose: false,
142
142
  // isEvery: false,
143
+ multiple: true,
143
144
  showIcon: true
144
145
  },
145
146
  aggregateConfig: {