vxe-table 4.11.6 → 4.11.8

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 (137) 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 +4 -2
  4. package/es/locale/lang/de-DE.js +4 -2
  5. package/es/locale/lang/en-US.js +4 -2
  6. package/es/locale/lang/es-ES.js +4 -2
  7. package/es/locale/lang/fr-FR.js +4 -2
  8. package/es/locale/lang/hu-HU.js +4 -2
  9. package/es/locale/lang/hy-AM.js +4 -2
  10. package/es/locale/lang/id-ID.js +4 -2
  11. package/es/locale/lang/it-IT.js +4 -2
  12. package/es/locale/lang/ja-JP.js +4 -2
  13. package/es/locale/lang/ko-KR.js +4 -2
  14. package/es/locale/lang/nb-NO.js +4 -2
  15. package/es/locale/lang/pt-BR.js +4 -2
  16. package/es/locale/lang/ru-RU.js +4 -2
  17. package/es/locale/lang/th-TH.js +4 -2
  18. package/es/locale/lang/ug-CN.js +4 -2
  19. package/es/locale/lang/uk-UA.js +4 -2
  20. package/es/locale/lang/vi-VN.js +4 -2
  21. package/es/locale/lang/zh-CHT.js +4 -2
  22. package/es/locale/lang/zh-CN.js +4 -2
  23. package/es/style.css +1 -1
  24. package/es/style.min.css +1 -1
  25. package/es/table/module/export/export-panel.js +7 -4
  26. package/es/table/module/export/hook.js +3 -3
  27. package/es/table/module/filter/hook.js +16 -18
  28. package/es/table/src/table.js +6 -6
  29. package/es/table/style.css +1 -1
  30. package/es/table/style.min.css +1 -1
  31. package/es/ui/index.js +1 -1
  32. package/es/ui/src/log.js +1 -1
  33. package/es/vxe-table/style.css +1 -1
  34. package/es/vxe-table/style.min.css +1 -1
  35. package/lib/index.css +1 -1
  36. package/lib/index.min.css +1 -1
  37. package/lib/index.umd.js +41 -36
  38. package/lib/index.umd.min.js +1 -1
  39. package/lib/locale/lang/ar-EG.js +4 -2
  40. package/lib/locale/lang/ar-EG.min.js +1 -1
  41. package/lib/locale/lang/de-DE.js +4 -2
  42. package/lib/locale/lang/de-DE.min.js +1 -1
  43. package/lib/locale/lang/en-US.js +4 -2
  44. package/lib/locale/lang/en-US.min.js +1 -1
  45. package/lib/locale/lang/en-US.umd.js +4 -2
  46. package/lib/locale/lang/es-ES.js +4 -2
  47. package/lib/locale/lang/es-ES.min.js +1 -1
  48. package/lib/locale/lang/es-ES.umd.js +4 -2
  49. package/lib/locale/lang/fr-FR.js +4 -2
  50. package/lib/locale/lang/fr-FR.min.js +1 -1
  51. package/lib/locale/lang/hu-HU.js +4 -2
  52. package/lib/locale/lang/hu-HU.min.js +1 -1
  53. package/lib/locale/lang/hu-HU.umd.js +4 -2
  54. package/lib/locale/lang/hy-AM.js +4 -2
  55. package/lib/locale/lang/hy-AM.min.js +1 -1
  56. package/lib/locale/lang/id-ID.js +4 -2
  57. package/lib/locale/lang/id-ID.min.js +1 -1
  58. package/lib/locale/lang/it-IT.js +4 -2
  59. package/lib/locale/lang/it-IT.min.js +1 -1
  60. package/lib/locale/lang/ja-JP.js +4 -2
  61. package/lib/locale/lang/ja-JP.min.js +1 -1
  62. package/lib/locale/lang/ja-JP.umd.js +4 -2
  63. package/lib/locale/lang/ko-KR.js +4 -2
  64. package/lib/locale/lang/ko-KR.min.js +1 -1
  65. package/lib/locale/lang/ko-KR.umd.js +4 -2
  66. package/lib/locale/lang/nb-NO.js +4 -2
  67. package/lib/locale/lang/nb-NO.min.js +1 -1
  68. package/lib/locale/lang/pt-BR.js +4 -2
  69. package/lib/locale/lang/pt-BR.min.js +1 -1
  70. package/lib/locale/lang/pt-BR.umd.js +4 -2
  71. package/lib/locale/lang/ru-RU.js +4 -2
  72. package/lib/locale/lang/ru-RU.min.js +1 -1
  73. package/lib/locale/lang/ru-RU.umd.js +4 -2
  74. package/lib/locale/lang/th-TH.js +4 -2
  75. package/lib/locale/lang/th-TH.min.js +1 -1
  76. package/lib/locale/lang/ug-CN.js +4 -2
  77. package/lib/locale/lang/ug-CN.min.js +1 -1
  78. package/lib/locale/lang/uk-UA.js +4 -2
  79. package/lib/locale/lang/uk-UA.min.js +1 -1
  80. package/lib/locale/lang/uk-UA.umd.js +4 -2
  81. package/lib/locale/lang/vi-VN.js +4 -2
  82. package/lib/locale/lang/vi-VN.min.js +1 -1
  83. package/lib/locale/lang/zh-CHT.js +4 -2
  84. package/lib/locale/lang/zh-CHT.min.js +1 -1
  85. package/lib/locale/lang/zh-CN.js +4 -2
  86. package/lib/locale/lang/zh-CN.min.js +1 -1
  87. package/lib/locale/lang/zh-CN.umd.js +4 -2
  88. package/lib/style.css +1 -1
  89. package/lib/style.min.css +1 -1
  90. package/lib/table/module/export/export-panel.js +7 -4
  91. package/lib/table/module/export/export-panel.min.js +1 -1
  92. package/lib/table/module/export/hook.js +4 -3
  93. package/lib/table/module/export/hook.min.js +1 -1
  94. package/lib/table/module/filter/hook.js +18 -19
  95. package/lib/table/module/filter/hook.min.js +1 -1
  96. package/lib/table/src/table.js +6 -6
  97. package/lib/table/src/table.min.js +1 -1
  98. package/lib/table/style/style.css +1 -1
  99. package/lib/table/style/style.min.css +1 -1
  100. package/lib/ui/index.js +1 -1
  101. package/lib/ui/index.min.js +1 -1
  102. package/lib/ui/src/log.js +1 -1
  103. package/lib/ui/src/log.min.js +1 -1
  104. package/lib/vxe-table/style/style.css +1 -1
  105. package/lib/vxe-table/style/style.min.css +1 -1
  106. package/package.json +2 -2
  107. package/packages/locale/lang/ar-EG.ts +4 -2
  108. package/packages/locale/lang/de-DE.ts +4 -2
  109. package/packages/locale/lang/en-US.ts +4 -2
  110. package/packages/locale/lang/es-ES.ts +4 -2
  111. package/packages/locale/lang/fr-FR.ts +4 -2
  112. package/packages/locale/lang/hu-HU.ts +4 -2
  113. package/packages/locale/lang/hy-AM.ts +4 -2
  114. package/packages/locale/lang/id-ID.ts +4 -2
  115. package/packages/locale/lang/it-IT.ts +4 -2
  116. package/packages/locale/lang/ja-JP.ts +4 -2
  117. package/packages/locale/lang/ko-KR.ts +4 -2
  118. package/packages/locale/lang/nb-NO.ts +4 -2
  119. package/packages/locale/lang/pt-BR.ts +4 -2
  120. package/packages/locale/lang/ru-RU.ts +4 -2
  121. package/packages/locale/lang/th-TH.ts +4 -2
  122. package/packages/locale/lang/ug-CN.ts +4 -2
  123. package/packages/locale/lang/uk-UA.ts +4 -2
  124. package/packages/locale/lang/vi-VN.ts +4 -2
  125. package/packages/locale/lang/zh-CHT.ts +4 -2
  126. package/packages/locale/lang/zh-CN.ts +4 -2
  127. package/packages/table/module/export/export-panel.ts +8 -4
  128. package/packages/table/module/export/hook.ts +3 -3
  129. package/packages/table/module/filter/hook.ts +17 -19
  130. package/packages/table/src/table.ts +6 -6
  131. package/styles/components/table.scss +1 -1
  132. /package/es/{iconfont.1740038200666.ttf → iconfont.1740188851839.ttf} +0 -0
  133. /package/es/{iconfont.1740038200666.woff → iconfont.1740188851839.woff} +0 -0
  134. /package/es/{iconfont.1740038200666.woff2 → iconfont.1740188851839.woff2} +0 -0
  135. /package/lib/{iconfont.1740038200666.ttf → iconfont.1740188851839.ttf} +0 -0
  136. /package/lib/{iconfont.1740038200666.woff → iconfont.1740188851839.woff} +0 -0
  137. /package/lib/{iconfont.1740038200666.woff2 → iconfont.1740188851839.woff2} +0 -0
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: 'La tabla de árbol no soporta importación.',
51
51
  treeCrossDrag: 'Only drag and drop the first level',
52
52
  treeDragChild: 'The parent cannot be dragged into its own child',
53
- reqPlugin: 'Optional extension "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'No hay datos',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: 'Confirmar',
121
- cancel: 'Cancelar'
121
+ cancel: 'Cancelar',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '搜索'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: 'Datos actuales (datos de la página actual)',
174
176
  selected: 'Datos seleccionados (datos seleccionados en la página actual)',
175
177
  all: 'Todos los datos (incluidos todos los datos de paginación)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: '树表格不支持导入',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: "Aucune donnée pour l'instant",
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: '确认',
121
- cancel: '取消'
121
+ cancel: '取消',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '搜索'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: '当前数据(当前页的数据)',
174
176
  selected: '选中数据(当前页选中的数据)',
175
177
  all: '全量数据(包括所有分页的数据)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: 'A fatáblák nem támogatják az importálást',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'Még nincsenek adatok',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: 'erősítse meg',
121
- cancel: 'Mégsem'
121
+ cancel: 'Mégsem',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: 'keresés'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: 'Aktuális adatok (az aktuális oldal adatai)',
174
176
  selected: 'Kijelölt adatok (kijelölt adatok az aktuális oldalon)',
175
177
  all: 'Teljes adat (beleértve az összes oldalszámozott adatot)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: '树表格不支持导入',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: '暂无数据',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: '确认',
121
- cancel: '取消'
121
+ cancel: '取消',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '搜索'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: '当前数据(当前页的数据)',
174
176
  selected: '选中数据(当前页选中的数据)',
175
177
  all: '全量数据(包括所有分页的数据)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: '树表格不支持导入',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: '暂无数据',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: '确认',
121
- cancel: '取消'
121
+ cancel: '取消',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '搜索'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: '当前数据(当前页的数据)',
174
176
  selected: '选中数据(当前页选中的数据)',
175
177
  all: '全量数据(包括所有分页的数据)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: "Le tabelle dell'albero non supportano l'importazione",
51
51
  treeCrossDrag: 'È possibile trascinare solo il primo livello',
52
52
  treeDragChild: 'Un genitore non può essere trascinato nei propri figli',
53
- reqPlugin: 'Estensione facoltativa "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'Nessun dato ancora',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: 'confermare',
121
- cancel: 'Cancellare'
121
+ cancel: 'Cancellare',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: 'ricerca'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: 'Dati attuali (dati della pagina corrente)',
174
176
  selected: 'Dati selezionati (dati selezionati nella pagina corrente)',
175
177
  all: 'Dati completi (compresi tutti i dati impaginati)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: 'ツリーテーブルはインポートをサポートしていません',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'データがありません',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: 'OK',
121
- cancel: 'キャンセル'
121
+ cancel: 'キャンセル',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '検索'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: '表示中のデータ(表示中のページのデータ)',
174
176
  selected: '選択したデータ(表示中のページに選択したデータ)',
175
177
  all: '全てのデータ(全てのページのデータを含む)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: '트리 테이블은 가져오기를 지원하지 않습니다.',
51
51
  treeCrossDrag: '첫 번째 계층만 드래그할 수 있습니다.',
52
52
  treeDragChild: '부모 항목은 자신의 하위 항목으로 드래그할 수 없습니다.',
53
- reqPlugin: '선택적 확장 플러그인 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: '데이터가 없습니다.',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: '확인',
121
- cancel: '취소'
121
+ cancel: '취소',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '검색'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: '현재 데이터(현재 페이지의 데이터)',
174
176
  selected: '선택된 데이터(현재 페이지에서 선택된 데이터)',
175
177
  all: '전체 데이터(모든 페이지의 데이터 포함)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: '树表格不支持导入',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'Ingen data ennå',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: '确认',
121
- cancel: '取消'
121
+ cancel: '取消',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '搜索'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: '当前数据(当前页的数据)',
174
176
  selected: '选中数据(当前页选中的数据)',
175
177
  all: '全量数据(包括所有分页的数据)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: 'A tabela de árvore não suporta importação.',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'Sem dados',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: 'Confirmar',
121
- cancel: 'Cancelar'
121
+ cancel: 'Cancelar',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: 'Buscar'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: 'Dados atuais (dados da página atual)',
174
176
  selected: 'Dados selecionados (dados selecionados na página atual)',
175
177
  all: 'Todos os dados (incluindo todos os dados de paginação)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: 'Древовидные таблицы не поддерживают импорт.',
51
51
  treeCrossDrag: 'Перетаскивать можно только первый уровень',
52
52
  treeDragChild: 'Родителя нельзя перетащить в своих дочерних элементов',
53
- reqPlugin: 'Дополнительное расширение "{1}" https://vxeui.com/other{0}/#/{1}/install.'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install.'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'Данных пока нет',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: 'подтверждать',
121
- cancel: 'Отмена'
121
+ cancel: 'Отмена',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: 'поиск'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: 'Текущие данные (данные текущей страницы)',
174
176
  selected: 'Выбранные данные (выбранные данные на текущей странице)',
175
177
  all: 'Полные данные (включая все данные с разбивкой на страницы)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: 'ตารางแผนผังไม่รองรับการนำเข้า',
51
51
  treeCrossDrag: 'สามารถลากได้เฉพาะระดับแรกเท่านั้น',
52
52
  treeDragChild: 'ผู้ปกครองไม่สามารถถูกลากเข้าไปในลูกของตัวเองได้',
53
- reqPlugin: 'ส่วนขยายเพิ่มเติม "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'ยังไม่มีข้อมูล',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: 'ยืนยัน',
121
- cancel: 'ยกเลิก'
121
+ cancel: 'ยกเลิก',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: 'ค้นหา'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: 'ข้อมูลปัจจุบัน (ข้อมูลของหน้าปัจจุบัน)',
174
176
  selected: 'ข้อมูลที่เลือก (ข้อมูลที่เลือกในหน้าปัจจุบัน)',
175
177
  all: 'ข้อมูลทั้งหมด (รวมถึงข้อมูลที่แบ่งหน้าทั้งหมด)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: 'دەرەخ شەكىللىك جەدىۋەلنى ئەكىرىشنى قوللىمايدۇ',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'ھازىرچە ئۇچۇر يوق',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: 'جەزىملەش',
121
- cancel: 'ئەمەلدىن قالدۇرۇش'
121
+ cancel: 'ئەمەلدىن قالدۇرۇش',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: 'ئىزدەش'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: 'ھازىرقى ئۇچۇر(نۆۋەتتىكى بەتتىكى ئۇچۇر)',
174
176
  selected: 'تاللانغان ئۇچۇر(نۆۋەتتىكى بەتتىكى بارلىق تاللانغان ئۇچۇر)',
175
177
  all: 'بارلىق ئۇچۇر(بارلىق بەتكە ئايرىلغان ئۇچۇرلارنى ئۆز ئىچىگە ئالىدۇ)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: 'Деревовидна таблиця не підтримує імпорт',
51
51
  treeCrossDrag: 'Можна перетягувати тільки на першому рівні',
52
52
  treeDragChild: 'Батьківський елемент не можна перетягнути в свій дочірній елемент',
53
- reqPlugin: 'Опційний розширений плагін "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: 'Немає даних',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: 'Підтвердити',
121
- cancel: 'Скасувати'
121
+ cancel: 'Скасувати',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: 'Пошук'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: 'Поточні дані (дані поточної сторінки)',
174
176
  selected: 'Вибрані дані (дані, вибрані на поточній сторінці)',
175
177
  all: 'Всі дані (включаючи дані з усіх сторінок)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: '树表格不支持导入',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: '暂无数据',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: '确认',
121
- cancel: '取消'
121
+ cancel: '取消',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '搜索'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: '当前数据(当前页的数据)',
174
176
  selected: '选中数据(当前页选中的数据)',
175
177
  all: '全量数据(包括所有分页的数据)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: '樹表格不支援導入',
51
51
  treeCrossDrag: '只能拖曳第一層級',
52
52
  treeDragChild: '父級不能拖曳到自己的子級中',
53
- reqPlugin: '選用擴充插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '擴展挿件未安裝 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: '暫無數據',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: '確認',
121
- cancel: '取消'
121
+ cancel: '取消',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '搜尋'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: '目前數據(當前頁的數據)',
174
176
  selected: '選取資料(目前頁選取的資料)',
175
177
  all: '全量資料(包括所有分頁的資料)'
@@ -50,7 +50,7 @@ export default {
50
50
  treeNotImp: '树表格不支持导入',
51
51
  treeCrossDrag: '只能拖拽第一层级',
52
52
  treeDragChild: '父级不能拖拽到自己的子级中',
53
- reqPlugin: '可选扩展插件 "{1}" https://vxeui.com/other{0}/#/{1}/install'
53
+ reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
54
54
  },
55
55
  table: {
56
56
  emptyText: '暂无数据',
@@ -118,7 +118,8 @@ export default {
118
118
  },
119
119
  button: {
120
120
  confirm: '确认',
121
- cancel: '取消'
121
+ cancel: '取消',
122
+ clear: '清除'
122
123
  },
123
124
  filter: {
124
125
  search: '搜索'
@@ -170,6 +171,7 @@ export default {
170
171
  pdf: 'PDF (*.pdf)'
171
172
  },
172
173
  modes: {
174
+ empty: '空数据',
173
175
  current: '当前数据(当前页的数据)',
174
176
  selected: '选中数据(当前页选中的数据)',
175
177
  all: '全量数据(包括所有分页的数据)'
@@ -247,6 +247,8 @@ export default defineComponent({
247
247
  columns,
248
248
  params: defaultOptions.params as any
249
249
  }
250
+ const hasEmptyData = defaultOptions.mode === 'empty'
251
+
250
252
  return h('div', {
251
253
  class: 'vxe-table-export--panel'
252
254
  }, [
@@ -386,7 +388,8 @@ export default defineComponent({
386
388
  }, [
387
389
  VxeUICheckboxComponent
388
390
  ? h(VxeUICheckboxComponent, {
389
- modelValue: defaultOptions.isHeader,
391
+ modelValue: hasEmptyData || defaultOptions.isHeader,
392
+ disabled: hasEmptyData,
390
393
  title: getI18n('vxe.export.expHeaderTitle'),
391
394
  content: getI18n('vxe.export.expOptHeader'),
392
395
  'onUpdate:modelValue' (value: any) {
@@ -407,7 +410,8 @@ export default defineComponent({
407
410
  : createCommentVNode(),
408
411
  VxeUICheckboxComponent
409
412
  ? h(VxeUICheckboxComponent, {
410
- modelValue: defaultOptions.original,
413
+ modelValue: hasEmptyData ? false : defaultOptions.original,
414
+ disabled: hasEmptyData,
411
415
  title: getI18n('vxe.export.expOriginalTitle'),
412
416
  content: getI18n('vxe.export.expOptOriginal'),
413
417
  'onUpdate:modelValue' (value: any) {
@@ -437,7 +441,7 @@ export default defineComponent({
437
441
  ? h(VxeUICheckboxComponent, {
438
442
  modelValue: hasMerge && supportMerge && checkedAll ? defaultOptions.isMerge : false,
439
443
  title: getI18n('vxe.export.expMergeTitle'),
440
- disabled: !hasMerge || !supportMerge || !checkedAll,
444
+ disabled: hasEmptyData || !hasMerge || !supportMerge || !checkedAll,
441
445
  content: getI18n('vxe.export.expOptMerge'),
442
446
  'onUpdate:modelValue' (value: any) {
443
447
  defaultOptions.isMerge = value
@@ -458,7 +462,7 @@ export default defineComponent({
458
462
  VxeUICheckboxComponent
459
463
  ? h(VxeUICheckboxComponent, {
460
464
  modelValue: hasTree ? defaultOptions.isAllExpand : false,
461
- disabled: !hasTree,
465
+ disabled: hasEmptyData || !hasTree,
462
466
  title: getI18n('vxe.export.expAllExpandTitle'),
463
467
  content: getI18n('vxe.export.expOptAllExpand'),
464
468
  'onUpdate:modelValue' (value: any) {
@@ -1033,7 +1033,7 @@ hooks.add('tableExportModule', {
1033
1033
  isMerge: hasMerge,
1034
1034
  useStyle: true,
1035
1035
  current: 'current',
1036
- modes: ['current', 'selected'].concat(proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : [])
1036
+ modes: (proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : []).concat(['current', 'selected', 'empty'])
1037
1037
  }, options)
1038
1038
  const types: string[] = defOpts.types || XEUtils.keys(exportOpts._typeMaps)
1039
1039
  const modes: string[] = defOpts.modes || []
@@ -1153,7 +1153,7 @@ hooks.add('tableExportModule', {
1153
1153
  isMerge: hasMerge,
1154
1154
  useStyle: true,
1155
1155
  current: 'current',
1156
- modes: ['current', 'selected'].concat(proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : []),
1156
+ modes: (proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : []).concat(['current', 'selected', 'empty']),
1157
1157
  download: true,
1158
1158
  type: 'csv'
1159
1159
  // filename: '',
@@ -1366,7 +1366,7 @@ hooks.add('tableExportModule', {
1366
1366
  })
1367
1367
  }
1368
1368
  }
1369
- } else if (mode === 'current') {
1369
+ } if (mode === 'current') {
1370
1370
  handleOptions.data = afterFullData
1371
1371
  }
1372
1372
  }
@@ -14,7 +14,7 @@ const tableFilterMethodKeys: (keyof TableFilterMethods)[] = ['openFilter', 'setF
14
14
  hooks.add('tableFilterModule', {
15
15
  setupTable ($xeTable) {
16
16
  const { props, reactData, internalData } = $xeTable
17
- const { refTableHeader, refTableBody, refTableFilter } = $xeTable.getRefMaps()
17
+ const { refElem, refTableFilter } = $xeTable.getRefMaps()
18
18
  const { computeFilterOpts, computeMouseOpts } = $xeTable.getComputeMaps()
19
19
 
20
20
  // 确认筛选
@@ -69,12 +69,16 @@ hooks.add('tableFilterModule', {
69
69
  * @param {ColumnInfo} column 列配置
70
70
  * @param {Object} params 参数
71
71
  */
72
- triggerFilterEvent (evnt, column, params) {
72
+ triggerFilterEvent (evnt: MouseEvent, column, params) {
73
73
  const { initStore, filterStore } = reactData
74
+ const { elemStore } = internalData
74
75
  if (filterStore.column === column && filterStore.visible) {
75
76
  filterStore.visible = false
76
77
  } else {
77
- const { target: targetElem, pageX } = evnt
78
+ const { clientY, pageX } = evnt
79
+ const el = refElem.value
80
+ const tableRect = el.getBoundingClientRect()
81
+ const targetElem = evnt.target as HTMLDivElement
78
82
  const { visibleWidth } = getDomNode()
79
83
  const { filters, filterMultiple, filterRender } = column
80
84
  const compConf = isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
@@ -100,11 +104,8 @@ hooks.add('tableFilterModule', {
100
104
  filterStore.visible = true
101
105
  initStore.filter = true
102
106
  nextTick(() => {
103
- const tableHeader = refTableHeader.value
104
- const tableBody = refTableBody.value
105
- const headerElem = tableHeader ? tableHeader.$el as HTMLDivElement : null
106
- const bodyElem = tableBody.$el as HTMLDivElement
107
- if (!bodyElem) {
107
+ const headerScrollElem = getRefElem(elemStore['main-header-scroll'])
108
+ if (!headerScrollElem) {
108
109
  return
109
110
  }
110
111
  const tableFilter = refTableFilter.value
@@ -113,28 +114,25 @@ hooks.add('tableFilterModule', {
113
114
  return
114
115
  }
115
116
  const filterWidth = filterWrapperElem.offsetWidth
116
- const filterHeight = filterWrapperElem.offsetHeight
117
117
  const filterHeadElem = filterWrapperElem.querySelector<HTMLDivElement>('.vxe-table--filter-header')
118
118
  const filterFootElem = filterWrapperElem.querySelector<HTMLDivElement>('.vxe-table--filter-footer')
119
119
  const centerWidth = filterWidth / 2
120
120
  const minMargin = 10
121
- const maxLeft = bodyElem.clientWidth - filterWidth - minMargin
121
+ const maxLeft = el.clientWidth - filterWidth - minMargin
122
122
  let left, right
123
+ const thEl = targetElem.offsetParent as HTMLTableCellElement
124
+ const trEl = thEl.offsetParent as HTMLTableCellElement
123
125
  const style: any = {
124
- top: `${targetElem.offsetTop + targetElem.offsetParent.offsetTop + targetElem.offsetHeight}px`
126
+ top: `${targetElem.offsetTop + thEl.offsetTop + targetElem.offsetHeight}px`
125
127
  }
126
128
  // 判断面板不能大于表格高度
127
- let maxHeight: number | null = null
128
- const bodyHeight = bodyElem.clientHeight - (headerElem ? headerElem.clientHeight / 2 : 0)
129
- if (filterHeight >= bodyHeight) {
130
- maxHeight = Math.max(40, bodyHeight - (filterFootElem ? filterFootElem.offsetHeight : 0) - (filterHeadElem ? filterHeadElem.offsetHeight : 0))
131
- }
129
+ const maxHeight = Math.max(40, el.clientHeight - (clientY - tableRect.y) - (filterHeadElem ? filterHeadElem.clientHeight : 0) - (filterFootElem ? filterFootElem.clientHeight : 0) - 14)
132
130
  if (column.fixed === 'left') {
133
- left = targetElem.offsetLeft + targetElem.offsetParent.offsetLeft - centerWidth
131
+ left = targetElem.offsetLeft + thEl.offsetLeft - centerWidth
134
132
  } else if (column.fixed === 'right') {
135
- right = (targetElem.offsetParent.offsetWidth - targetElem.offsetLeft) + (targetElem.offsetParent.offsetParent.offsetWidth - targetElem.offsetParent.offsetLeft) - column.renderWidth - centerWidth
133
+ right = (thEl.offsetWidth - targetElem.offsetLeft) + (trEl.offsetWidth - trEl.offsetLeft) - column.renderWidth - centerWidth
136
134
  } else {
137
- left = targetElem.offsetLeft + targetElem.offsetParent.offsetLeft - centerWidth - bodyElem.scrollLeft
135
+ left = targetElem.offsetLeft + thEl.offsetLeft - centerWidth - headerScrollElem.scrollLeft
138
136
  }
139
137
  if (left) {
140
138
  const overflowWidth = (pageX + filterWidth - centerWidth + minMargin) - visibleWidth