vxe-table 4.23.4 → 4.23.6

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 (483) hide show
  1. package/dist/all.esm.js +32459 -33908
  2. package/dist/style.css +4501 -1
  3. package/dist/style.mini.css +1 -0
  4. package/es/colgroup/index.d.ts +760 -0
  5. package/es/colgroup/index.js +16 -13
  6. package/es/column/index.d.ts +760 -0
  7. package/es/column/index.js +16 -13
  8. package/es/components.d.ts +9 -0
  9. package/es/components.js +29 -29
  10. package/es/grid/index.d.ts +2824 -0
  11. package/es/grid/index.js +14 -9
  12. package/es/grid/src/emits.d.ts +2 -0
  13. package/es/grid/src/emits.js +18 -15
  14. package/es/grid/src/grid.d.ts +556 -0
  15. package/es/grid/src/grid.js +1695 -1758
  16. package/es/grid/src/props.d.ts +200 -0
  17. package/es/grid/src/props.js +19 -6
  18. package/es/{vxe-grid/style.min.css → grid/style.mini.css} +1 -1
  19. package/es/index.d.ts +3 -0
  20. package/es/index.esm.js +6 -3
  21. package/es/index.js +6 -0
  22. package/es/locale/lang/ar-EG.d.ts +908 -2
  23. package/es/locale/lang/ar-EG.js +906 -903
  24. package/es/locale/lang/de-DE.d.ts +908 -2
  25. package/es/locale/lang/de-DE.js +906 -903
  26. package/es/locale/lang/en-US.d.ts +908 -2
  27. package/es/locale/lang/en-US.js +906 -903
  28. package/es/locale/lang/es-ES.d.ts +908 -2
  29. package/es/locale/lang/es-ES.js +906 -903
  30. package/es/locale/lang/fr-FR.d.ts +908 -2
  31. package/es/locale/lang/fr-FR.js +906 -903
  32. package/es/locale/lang/hu-HU.d.ts +908 -2
  33. package/es/locale/lang/hu-HU.js +906 -903
  34. package/es/locale/lang/hy-AM.d.ts +908 -2
  35. package/es/locale/lang/hy-AM.js +906 -903
  36. package/es/locale/lang/id-ID.d.ts +908 -2
  37. package/es/locale/lang/id-ID.js +906 -903
  38. package/es/locale/lang/it-IT.d.ts +908 -2
  39. package/es/locale/lang/it-IT.js +906 -903
  40. package/es/locale/lang/ja-JP.d.ts +908 -2
  41. package/es/locale/lang/ja-JP.js +906 -903
  42. package/es/locale/lang/ko-KR.d.ts +908 -2
  43. package/es/locale/lang/ko-KR.js +906 -903
  44. package/es/locale/lang/ms-MY.d.ts +908 -2
  45. package/es/locale/lang/ms-MY.js +906 -903
  46. package/es/locale/lang/nb-NO.d.ts +908 -2
  47. package/es/locale/lang/nb-NO.js +906 -903
  48. package/es/locale/lang/pt-BR.d.ts +908 -2
  49. package/es/locale/lang/pt-BR.js +906 -903
  50. package/es/locale/lang/ru-RU.d.ts +908 -2
  51. package/es/locale/lang/ru-RU.js +906 -903
  52. package/es/locale/lang/th-TH.d.ts +908 -2
  53. package/es/locale/lang/th-TH.js +906 -903
  54. package/es/locale/lang/ug-CN.d.ts +908 -2
  55. package/es/locale/lang/ug-CN.js +906 -903
  56. package/es/locale/lang/uk-UA.d.ts +908 -2
  57. package/es/locale/lang/uk-UA.js +906 -903
  58. package/es/locale/lang/uz-UZ.d.ts +908 -2
  59. package/es/locale/lang/uz-UZ.js +906 -903
  60. package/es/locale/lang/vi-VN.d.ts +908 -2
  61. package/es/locale/lang/vi-VN.js +906 -903
  62. package/es/locale/lang/zh-CHT.d.ts +908 -2
  63. package/es/locale/lang/zh-CHT.js +906 -903
  64. package/es/locale/lang/zh-CN.d.ts +908 -2
  65. package/es/locale/lang/zh-CN.js +906 -903
  66. package/es/locale/lang/zh-HK.d.ts +908 -2
  67. package/es/locale/lang/zh-HK.js +910 -2
  68. package/es/locale/lang/zh-MO.d.ts +908 -2
  69. package/es/locale/lang/zh-MO.js +910 -2
  70. package/es/locale/lang/zh-TC.d.ts +908 -0
  71. package/es/locale/lang/zh-TC.js +910 -2
  72. package/es/locale/lang/zh-TW.d.ts +908 -2
  73. package/es/locale/lang/zh-TW.js +910 -2
  74. package/es/table/index.d.ts +2672 -0
  75. package/es/table/index.js +16 -11
  76. package/es/table/module/custom/hook.d.ts +1 -0
  77. package/es/table/module/custom/hook.js +462 -483
  78. package/es/table/module/custom/panel.d.ts +17 -0
  79. package/es/table/module/custom/panel.js +1482 -1559
  80. package/es/table/module/edit/hook.d.ts +1 -0
  81. package/es/table/module/edit/hook.js +1008 -1078
  82. package/es/table/module/export/export-panel.d.ts +27 -0
  83. package/es/table/module/export/export-panel.js +523 -575
  84. package/es/table/module/export/hook.d.ts +1 -0
  85. package/es/table/module/export/hook.js +1805 -1884
  86. package/es/table/module/export/import-panel.d.ts +27 -0
  87. package/es/table/module/export/import-panel.js +244 -252
  88. package/es/table/module/export/util.d.ts +5 -0
  89. package/es/table/module/export/util.js +20 -17
  90. package/es/table/module/filter/hook.d.ts +1 -0
  91. package/es/table/module/filter/hook.js +472 -487
  92. package/es/table/module/filter/panel.d.ts +16 -0
  93. package/es/table/module/filter/panel.js +251 -275
  94. package/es/table/module/keyboard/hook.d.ts +1 -0
  95. package/es/table/module/keyboard/hook.js +445 -497
  96. package/es/table/module/menu/hook.d.ts +1 -0
  97. package/es/table/module/menu/hook.js +295 -315
  98. package/es/table/module/menu/panel.d.ts +2 -0
  99. package/es/table/module/menu/panel.js +164 -183
  100. package/es/table/module/validator/hook.d.ts +1 -0
  101. package/es/table/module/validator/hook.js +522 -571
  102. package/es/table/render/index.d.ts +1 -0
  103. package/es/table/render/index.js +1402 -1362
  104. package/es/table/src/body.d.ts +24 -0
  105. package/es/table/src/body.js +850 -865
  106. package/es/table/src/cell.d.ts +192 -0
  107. package/es/table/src/cell.js +1209 -1207
  108. package/es/table/src/column.d.ts +263 -0
  109. package/es/table/src/column.js +178 -174
  110. package/es/table/src/columnInfo.d.ts +13 -0
  111. package/es/table/src/columnInfo.js +202 -196
  112. package/es/table/src/emits.d.ts +2 -0
  113. package/es/table/src/emits.js +126 -119
  114. package/es/table/src/footer.d.ts +45 -0
  115. package/es/table/src/footer.js +336 -340
  116. package/es/table/src/group.d.ts +178 -0
  117. package/es/table/src/group.js +49 -46
  118. package/es/table/src/header.d.ts +26 -0
  119. package/es/table/src/header.js +517 -519
  120. package/es/table/src/props.d.ts +238 -0
  121. package/es/table/src/props.js +331 -328
  122. package/es/table/src/store.d.ts +6 -0
  123. package/es/table/src/store.js +9 -6
  124. package/es/table/src/table.d.ts +539 -0
  125. package/es/table/src/table.js +14064 -15041
  126. package/es/table/src/use/cell-view.d.ts +10 -0
  127. package/es/table/src/use/cell-view.js +36 -33
  128. package/es/table/src/use/index.d.ts +1 -0
  129. package/es/table/src/use/index.js +1 -1
  130. package/es/table/src/util.d.ts +74 -0
  131. package/es/table/src/util.js +1038 -1026
  132. package/es/table/style.css +1 -1
  133. package/es/table/style.mini.css +1 -0
  134. package/es/toolbar/index.d.ts +340 -0
  135. package/es/toolbar/index.js +14 -9
  136. package/es/toolbar/src/toolbar.d.ts +75 -0
  137. package/es/toolbar/src/toolbar.js +605 -613
  138. package/es/toolbar/{style.min.css → style.mini.css} +1 -1
  139. package/es/ui/index.d.ts +86 -0
  140. package/es/ui/index.js +457 -501
  141. package/es/ui/src/anime.d.ts +10 -0
  142. package/es/ui/src/anime.js +40 -40
  143. package/es/ui/src/comp.d.ts +2 -0
  144. package/es/ui/src/comp.js +5 -2
  145. package/es/ui/src/dom.d.ts +80 -0
  146. package/es/ui/src/dom.js +377 -380
  147. package/es/ui/src/log.d.ts +6 -0
  148. package/es/ui/src/log.js +18 -13
  149. package/es/ui/src/utils.d.ts +23 -0
  150. package/es/ui/src/utils.js +57 -53
  151. package/es/ui/src/vn.d.ts +7 -0
  152. package/es/ui/src/vn.js +49 -42
  153. package/es/v-x-e-table/index.d.ts +3 -0
  154. package/es/v-x-e-table/index.js +6 -3
  155. package/es/vxe-colgroup/index.d.ts +3 -0
  156. package/es/vxe-colgroup/index.js +6 -3
  157. package/es/vxe-column/index.d.ts +3 -0
  158. package/es/vxe-column/index.js +6 -3
  159. package/es/vxe-grid/index.d.ts +3 -0
  160. package/es/vxe-grid/index.js +6 -3
  161. package/{lib/grid/style/style.min.css → es/vxe-grid/style.mini.css} +1 -1
  162. package/es/vxe-table/index.d.ts +3 -0
  163. package/es/vxe-table/index.js +6 -3
  164. package/es/vxe-table/style.css +1 -1
  165. package/es/vxe-table/style.mini.css +1 -0
  166. package/es/vxe-toolbar/index.d.ts +3 -0
  167. package/es/vxe-toolbar/index.js +6 -3
  168. package/es/vxe-toolbar/{style.min.css → style.mini.css} +1 -1
  169. package/es/vxe-ui/index.d.ts +3 -0
  170. package/es/vxe-ui/index.js +6 -3
  171. package/lib/colgroup/index.js +44 -18
  172. package/lib/colgroup/style/index.js +1 -1
  173. package/lib/column/index.js +44 -18
  174. package/lib/column/style/index.js +1 -1
  175. package/lib/components.js +58 -92
  176. package/lib/grid/index.js +42 -14
  177. package/lib/grid/src/emits.js +37 -6
  178. package/lib/grid/src/grid.js +850 -1195
  179. package/lib/grid/src/props.js +27 -11
  180. package/lib/grid/style/index.js +1 -1
  181. package/lib/{vxe-grid/style/style.min.css → grid/style/style.mini.css} +1 -1
  182. package/lib/iconfont.1792977622800.ttf +0 -0
  183. package/lib/iconfont.1792977622800.woff +0 -0
  184. package/lib/iconfont.1792977622800.woff2 +0 -0
  185. package/lib/index.common.js +35 -19
  186. package/lib/index.js +37 -0
  187. package/lib/index.umd.js +30586 -24322
  188. package/lib/index.umd.min.js +3 -1
  189. package/lib/locale/ar-EG.umd.js +948 -0
  190. package/lib/locale/de-DE.umd.js +948 -0
  191. package/lib/locale/en-US.umd.js +948 -0
  192. package/lib/locale/es-ES.umd.js +948 -0
  193. package/lib/locale/fr-FR.umd.js +948 -0
  194. package/lib/locale/hu-HU.umd.js +948 -0
  195. package/lib/locale/hy-AM.umd.js +948 -0
  196. package/lib/locale/id-ID.umd.js +948 -0
  197. package/lib/locale/it-IT.umd.js +948 -0
  198. package/lib/locale/ja-JP.umd.js +948 -0
  199. package/lib/locale/ko-KR.umd.js +948 -0
  200. package/lib/locale/lang/ar-EG.js +681 -664
  201. package/lib/locale/lang/ar-EG.umd.js +913 -892
  202. package/lib/locale/lang/de-DE.js +681 -664
  203. package/lib/locale/lang/de-DE.umd.js +913 -892
  204. package/lib/locale/lang/en-US.js +678 -661
  205. package/lib/locale/lang/en-US.umd.js +913 -892
  206. package/lib/locale/lang/es-ES.js +681 -664
  207. package/lib/locale/lang/es-ES.umd.js +913 -892
  208. package/lib/locale/lang/fr-FR.js +654 -637
  209. package/lib/locale/lang/fr-FR.umd.js +913 -892
  210. package/lib/locale/lang/hu-HU.js +681 -664
  211. package/lib/locale/lang/hu-HU.umd.js +913 -892
  212. package/lib/locale/lang/hy-AM.js +681 -664
  213. package/lib/locale/lang/hy-AM.umd.js +913 -892
  214. package/lib/locale/lang/id-ID.js +681 -664
  215. package/lib/locale/lang/id-ID.umd.js +913 -892
  216. package/lib/locale/lang/it-IT.js +661 -644
  217. package/lib/locale/lang/it-IT.umd.js +912 -891
  218. package/lib/locale/lang/ja-JP.js +710 -693
  219. package/lib/locale/lang/ja-JP.umd.js +913 -892
  220. package/lib/locale/lang/ko-KR.js +681 -664
  221. package/lib/locale/lang/ko-KR.umd.js +913 -892
  222. package/lib/locale/lang/ms-MY.js +681 -664
  223. package/lib/locale/lang/ms-MY.umd.js +913 -892
  224. package/lib/locale/lang/nb-NO.js +681 -664
  225. package/lib/locale/lang/nb-NO.umd.js +913 -892
  226. package/lib/locale/lang/pt-BR.js +681 -664
  227. package/lib/locale/lang/pt-BR.umd.js +913 -892
  228. package/lib/locale/lang/ru-RU.js +690 -673
  229. package/lib/locale/lang/ru-RU.umd.js +913 -892
  230. package/lib/locale/lang/th-TH.js +681 -664
  231. package/lib/locale/lang/th-TH.umd.js +913 -892
  232. package/lib/locale/lang/ug-CN.js +681 -664
  233. package/lib/locale/lang/ug-CN.umd.js +913 -892
  234. package/lib/locale/lang/uk-UA.js +674 -657
  235. package/lib/locale/lang/uk-UA.umd.js +913 -892
  236. package/lib/locale/lang/uz-UZ.js +583 -566
  237. package/lib/locale/lang/uz-UZ.umd.js +908 -887
  238. package/lib/locale/lang/vi-VN.js +681 -664
  239. package/lib/locale/lang/vi-VN.umd.js +913 -892
  240. package/lib/locale/lang/zh-CHT.js +681 -664
  241. package/lib/locale/lang/zh-CHT.umd.js +913 -892
  242. package/lib/locale/lang/zh-CN.js +681 -664
  243. package/lib/locale/lang/zh-CN.umd.js +913 -892
  244. package/lib/locale/lang/zh-HK.js +928 -7
  245. package/lib/locale/lang/zh-HK.umd.js +945 -20
  246. package/lib/locale/lang/zh-MO.js +928 -7
  247. package/lib/locale/lang/zh-MO.umd.js +945 -20
  248. package/lib/locale/lang/zh-TC.js +928 -7
  249. package/lib/locale/lang/zh-TC.umd.js +948 -0
  250. package/lib/locale/lang/zh-TW.js +928 -7
  251. package/lib/locale/lang/zh-TW.umd.js +945 -20
  252. package/lib/locale/ms-MY.umd.js +948 -0
  253. package/lib/locale/nb-NO.umd.js +948 -0
  254. package/lib/locale/pt-BR.umd.js +948 -0
  255. package/lib/locale/ru-RU.umd.js +948 -0
  256. package/lib/locale/th-TH.umd.js +948 -0
  257. package/lib/locale/ug-CN.umd.js +948 -0
  258. package/lib/locale/uk-UA.umd.js +948 -0
  259. package/lib/locale/uz-UZ.umd.js +948 -0
  260. package/lib/locale/vi-VN.umd.js +948 -0
  261. package/lib/locale/zh-CHT.umd.js +948 -0
  262. package/lib/locale/zh-CN.umd.js +948 -0
  263. package/lib/locale/zh-HK.umd.js +948 -0
  264. package/lib/locale/zh-MO.umd.js +948 -0
  265. package/lib/locale/zh-TC.umd.js +948 -0
  266. package/lib/locale/zh-TW.umd.js +948 -0
  267. package/lib/style.css +4501 -1
  268. package/lib/style.mini.css +1 -0
  269. package/lib/table/index.js +45 -17
  270. package/lib/table/module/custom/hook.js +132 -252
  271. package/lib/table/module/custom/panel.js +919 -970
  272. package/lib/table/module/edit/hook.js +250 -620
  273. package/lib/table/module/export/export-panel.js +390 -347
  274. package/lib/table/module/export/hook.js +745 -1179
  275. package/lib/table/module/export/import-panel.js +170 -136
  276. package/lib/table/module/export/util.js +37 -14
  277. package/lib/table/module/filter/hook.js +127 -227
  278. package/lib/table/module/filter/panel.js +177 -208
  279. package/lib/table/module/keyboard/hook.js +93 -172
  280. package/lib/table/module/menu/hook.js +86 -165
  281. package/lib/table/module/menu/panel.js +176 -141
  282. package/lib/table/module/validator/hook.js +164 -271
  283. package/lib/table/render/index.js +700 -1147
  284. package/lib/table/src/body.js +426 -559
  285. package/lib/table/src/cell.js +619 -987
  286. package/lib/table/src/column.js +55 -30
  287. package/lib/table/src/columnInfo.js +88 -110
  288. package/lib/table/src/emits.js +145 -13
  289. package/lib/table/src/footer.js +181 -240
  290. package/lib/table/src/group.js +56 -34
  291. package/lib/table/src/header.js +292 -367
  292. package/lib/table/src/props.js +27 -12
  293. package/lib/table/src/store.js +25 -9
  294. package/lib/table/src/table.js +14179 -1019
  295. package/lib/table/src/use/cell-view.js +47 -37
  296. package/lib/table/src/use/index.js +17 -15
  297. package/lib/table/src/util.js +236 -337
  298. package/lib/table/style/index.js +1 -1
  299. package/lib/table/style/style.css +1 -1
  300. package/lib/table/style/style.mini.css +1 -0
  301. package/lib/toolbar/index.js +42 -14
  302. package/lib/toolbar/src/toolbar.js +271 -379
  303. package/lib/toolbar/style/index.js +1 -1
  304. package/lib/toolbar/style/{style.min.css → style.mini.css} +1 -1
  305. package/lib/ui/index.js +153 -195
  306. package/lib/ui/src/anime.js +49 -29
  307. package/lib/ui/src/comp.js +23 -6
  308. package/lib/ui/src/dom.js +114 -147
  309. package/lib/ui/src/log.js +34 -18
  310. package/lib/ui/src/utils.js +57 -45
  311. package/lib/ui/src/vn.js +60 -34
  312. package/lib/ui/style/index.js +1 -1
  313. package/lib/v-x-e-table/index.js +35 -19
  314. package/lib/vxe-colgroup/index.js +35 -19
  315. package/lib/vxe-colgroup/style/index.js +1 -1
  316. package/lib/vxe-column/index.js +35 -19
  317. package/lib/vxe-column/style/index.js +1 -1
  318. package/lib/vxe-grid/index.js +35 -19
  319. package/lib/vxe-grid/style/index.js +1 -1
  320. package/{es/grid/style.min.css → lib/vxe-grid/style/style.mini.css} +1 -1
  321. package/lib/vxe-table/index.js +35 -19
  322. package/lib/vxe-table/style/index.js +1 -1
  323. package/lib/vxe-table/style/style.css +1 -1
  324. package/lib/vxe-table/style/style.mini.css +1 -0
  325. package/lib/vxe-toolbar/index.js +35 -19
  326. package/lib/vxe-toolbar/style/index.js +1 -1
  327. package/lib/vxe-toolbar/style/{style.min.css → style.mini.css} +1 -1
  328. package/lib/vxe-ui/index.js +35 -19
  329. package/lib/vxe-ui/style/index.js +1 -1
  330. package/package.json +8 -4
  331. package/packages/locale/lang/zh-HK.ts +907 -3
  332. package/packages/locale/lang/zh-MO.ts +907 -3
  333. package/packages/locale/lang/zh-TC.ts +907 -3
  334. package/packages/locale/lang/zh-TW.ts +907 -3
  335. package/packages/table/module/edit/hook.ts +2 -2
  336. package/packages/table/src/table.ts +64 -28
  337. package/packages/ui/index.ts +1 -28
  338. package/dist/style.min.css +0 -1
  339. package/es/index.css +0 -1
  340. package/es/index.min.css +0 -1
  341. package/es/style.css +0 -1
  342. package/es/style.min.css +0 -1
  343. package/es/table/style.min.css +0 -1
  344. package/es/vxe-table/style.min.css +0 -1
  345. package/es/vxe-v-x-e-table/index.js +0 -3
  346. package/lib/colgroup/index.min.js +0 -1
  347. package/lib/column/index.min.js +0 -1
  348. package/lib/components.min.js +0 -1
  349. package/lib/grid/index.min.js +0 -1
  350. package/lib/grid/src/emits.min.js +0 -1
  351. package/lib/grid/src/grid.min.js +0 -1
  352. package/lib/grid/src/props.min.js +0 -1
  353. package/lib/index.css +0 -1
  354. package/lib/index.min.css +0 -1
  355. package/lib/locale/lang/ar-EG.d.ts +0 -2
  356. package/lib/locale/lang/ar-EG.min.js +0 -1
  357. package/lib/locale/lang/de-DE.d.ts +0 -2
  358. package/lib/locale/lang/de-DE.min.js +0 -1
  359. package/lib/locale/lang/en-US.d.ts +0 -2
  360. package/lib/locale/lang/en-US.min.js +0 -1
  361. package/lib/locale/lang/es-ES.d.ts +0 -2
  362. package/lib/locale/lang/es-ES.min.js +0 -1
  363. package/lib/locale/lang/fr-FR.d.ts +0 -2
  364. package/lib/locale/lang/fr-FR.min.js +0 -1
  365. package/lib/locale/lang/hu-HU.d.ts +0 -2
  366. package/lib/locale/lang/hu-HU.min.js +0 -1
  367. package/lib/locale/lang/hy-AM.d.ts +0 -2
  368. package/lib/locale/lang/hy-AM.min.js +0 -1
  369. package/lib/locale/lang/id-ID.d.ts +0 -2
  370. package/lib/locale/lang/id-ID.min.js +0 -1
  371. package/lib/locale/lang/it-IT.d.ts +0 -2
  372. package/lib/locale/lang/it-IT.min.js +0 -1
  373. package/lib/locale/lang/ja-JP.d.ts +0 -2
  374. package/lib/locale/lang/ja-JP.min.js +0 -1
  375. package/lib/locale/lang/ko-KR.d.ts +0 -2
  376. package/lib/locale/lang/ko-KR.min.js +0 -1
  377. package/lib/locale/lang/ms-MY.d.ts +0 -2
  378. package/lib/locale/lang/ms-MY.min.js +0 -1
  379. package/lib/locale/lang/nb-NO.d.ts +0 -2
  380. package/lib/locale/lang/nb-NO.min.js +0 -1
  381. package/lib/locale/lang/pt-BR.d.ts +0 -2
  382. package/lib/locale/lang/pt-BR.min.js +0 -1
  383. package/lib/locale/lang/ru-RU.d.ts +0 -2
  384. package/lib/locale/lang/ru-RU.min.js +0 -1
  385. package/lib/locale/lang/th-TH.d.ts +0 -2
  386. package/lib/locale/lang/th-TH.min.js +0 -1
  387. package/lib/locale/lang/ug-CN.d.ts +0 -2
  388. package/lib/locale/lang/ug-CN.min.js +0 -1
  389. package/lib/locale/lang/uk-UA.d.ts +0 -2
  390. package/lib/locale/lang/uk-UA.min.js +0 -1
  391. package/lib/locale/lang/uz-UZ.d.ts +0 -2
  392. package/lib/locale/lang/uz-UZ.min.js +0 -1
  393. package/lib/locale/lang/vi-VN.d.ts +0 -2
  394. package/lib/locale/lang/vi-VN.min.js +0 -1
  395. package/lib/locale/lang/zh-CHT.d.ts +0 -2
  396. package/lib/locale/lang/zh-CHT.min.js +0 -1
  397. package/lib/locale/lang/zh-CN.d.ts +0 -2
  398. package/lib/locale/lang/zh-CN.min.js +0 -1
  399. package/lib/locale/lang/zh-HK.d.ts +0 -2
  400. package/lib/locale/lang/zh-HK.min.js +0 -1
  401. package/lib/locale/lang/zh-MO.d.ts +0 -2
  402. package/lib/locale/lang/zh-MO.min.js +0 -1
  403. package/lib/locale/lang/zh-TC.min.js +0 -1
  404. package/lib/locale/lang/zh-TW.d.ts +0 -2
  405. package/lib/locale/lang/zh-TW.min.js +0 -1
  406. package/lib/style.min.css +0 -1
  407. package/lib/table/index.min.js +0 -1
  408. package/lib/table/module/custom/hook.min.js +0 -1
  409. package/lib/table/module/custom/panel.min.js +0 -1
  410. package/lib/table/module/edit/hook.min.js +0 -1
  411. package/lib/table/module/export/export-panel.min.js +0 -1
  412. package/lib/table/module/export/hook.min.js +0 -1
  413. package/lib/table/module/export/import-panel.min.js +0 -1
  414. package/lib/table/module/export/util.min.js +0 -1
  415. package/lib/table/module/filter/hook.min.js +0 -1
  416. package/lib/table/module/filter/panel.min.js +0 -1
  417. package/lib/table/module/keyboard/hook.min.js +0 -1
  418. package/lib/table/module/menu/hook.min.js +0 -1
  419. package/lib/table/module/menu/panel.min.js +0 -1
  420. package/lib/table/module/validator/hook.min.js +0 -1
  421. package/lib/table/render/index.min.js +0 -1
  422. package/lib/table/src/body.min.js +0 -1
  423. package/lib/table/src/cell.min.js +0 -1
  424. package/lib/table/src/column.min.js +0 -1
  425. package/lib/table/src/columnInfo.min.js +0 -1
  426. package/lib/table/src/emits.min.js +0 -1
  427. package/lib/table/src/footer.min.js +0 -1
  428. package/lib/table/src/group.min.js +0 -1
  429. package/lib/table/src/header.min.js +0 -1
  430. package/lib/table/src/props.min.js +0 -1
  431. package/lib/table/src/store.min.js +0 -1
  432. package/lib/table/src/table.min.js +0 -1
  433. package/lib/table/src/use/cell-view.min.js +0 -1
  434. package/lib/table/src/use/index.min.js +0 -1
  435. package/lib/table/src/util.min.js +0 -1
  436. package/lib/table/style/style.min.css +0 -1
  437. package/lib/toolbar/index.min.js +0 -1
  438. package/lib/toolbar/src/toolbar.min.js +0 -1
  439. package/lib/ui/index.min.js +0 -1
  440. package/lib/ui/src/anime.min.js +0 -1
  441. package/lib/ui/src/comp.min.js +0 -1
  442. package/lib/ui/src/dom.min.js +0 -1
  443. package/lib/ui/src/log.min.js +0 -1
  444. package/lib/ui/src/utils.min.js +0 -1
  445. package/lib/ui/src/vn.min.js +0 -1
  446. package/lib/ui/style/style.min.css +0 -0
  447. package/lib/v-x-e-table/index.min.js +0 -1
  448. package/lib/v-x-e-table/style/index.js +0 -1
  449. package/lib/v-x-e-table/style/style.css +0 -0
  450. package/lib/v-x-e-table/style/style.min.css +0 -0
  451. package/lib/vxe-colgroup/index.min.js +0 -1
  452. package/lib/vxe-colgroup/style/style.min.css +0 -0
  453. package/lib/vxe-column/index.min.js +0 -1
  454. package/lib/vxe-column/style/style.min.css +0 -0
  455. package/lib/vxe-grid/index.min.js +0 -1
  456. package/lib/vxe-table/index.min.js +0 -1
  457. package/lib/vxe-table/style/style.min.css +0 -1
  458. package/lib/vxe-toolbar/index.min.js +0 -1
  459. package/lib/vxe-ui/index.min.js +0 -1
  460. package/lib/vxe-ui/style/style.min.css +0 -0
  461. package/lib/vxe-v-x-e-table/index.js +0 -21
  462. package/lib/vxe-v-x-e-table/index.min.js +0 -1
  463. package/lib/vxe-v-x-e-table/style/index.js +0 -1
  464. package/lib/vxe-v-x-e-table/style/style.css +0 -0
  465. package/lib/vxe-v-x-e-table/style/style.min.css +0 -0
  466. /package/{es/iconfont.1792740941484.ttf → dist/iconfont.1792977622800.ttf} +0 -0
  467. /package/{es/iconfont.1792740941484.woff → dist/iconfont.1792977622800.woff} +0 -0
  468. /package/{es/iconfont.1792740941484.woff2 → dist/iconfont.1792977622800.woff2} +0 -0
  469. /package/es/colgroup/{style.min.css → style.mini.css} +0 -0
  470. /package/es/column/{style.min.css → style.mini.css} +0 -0
  471. /package/{lib/iconfont.1792740941484.ttf → es/iconfont.1792977622800.ttf} +0 -0
  472. /package/{lib/iconfont.1792740941484.woff → es/iconfont.1792977622800.woff} +0 -0
  473. /package/{lib/iconfont.1792740941484.woff2 → es/iconfont.1792977622800.woff2} +0 -0
  474. /package/es/ui/{style.min.css → style.mini.css} +0 -0
  475. /package/es/{v-x-e-table/style.css → vxe-colgroup/style.mini.css} +0 -0
  476. /package/es/{v-x-e-table/style.min.css → vxe-column/style.mini.css} +0 -0
  477. /package/es/{vxe-colgroup/style.min.css → vxe-ui/style.mini.css} +0 -0
  478. /package/{es/vxe-column/style.min.css → lib/colgroup/style/style.mini.css} +0 -0
  479. /package/{es/vxe-ui/style.min.css → lib/column/style/style.mini.css} +0 -0
  480. /package/{es/vxe-v-x-e-table/style.css → lib/ui/style/style.mini.css} +0 -0
  481. /package/{es/vxe-v-x-e-table/style.min.css → lib/vxe-colgroup/style/style.mini.css} +0 -0
  482. /package/lib/{colgroup/style/style.min.css → vxe-column/style/style.mini.css} +0 -0
  483. /package/lib/{column/style/style.min.css → vxe-ui/style/style.mini.css} +0 -0
@@ -1,349 +1,345 @@
1
- import { h, ref, inject, nextTick, onMounted, onUnmounted } from 'vue';
2
- import { defineVxeComponent } from '../../ui/src/comp';
3
- import XEUtils from 'xe-utils';
4
- import { VxeUI } from '../../ui';
5
- import { updateCellTitle, getPropClass } from '../../ui/src/dom';
6
- import { getCalcHeight } from './util';
7
- import { getDefaultConfig } from '../../ui/src/utils';
1
+ import { h, ref, inject, nextTick, onMounted, onUnmounted } from "vue";
2
+ import { defineVxeComponent } from "../../ui/src/comp";
3
+ import XEUtils from "xe-utils";
4
+ import { VxeUI } from "../../ui";
5
+ import { updateCellTitle, getPropClass } from "../../ui/src/dom";
6
+ import { getCalcHeight } from "./util";
7
+ import { getDefaultConfig } from "../../ui/src/utils";
8
8
  const { renderer, renderEmptyElement } = VxeUI;
9
- const sourceType = 'table';
10
- const renderType = 'footer';
11
- export default defineVxeComponent({
12
- name: 'VxeTableFooter',
13
- props: {
14
- footerTableData: {
15
- type: Array,
16
- default: () => []
17
- },
18
- tableColumn: {
19
- type: Array,
20
- default: () => []
21
- },
22
- fixedColumn: {
23
- type: Array,
24
- default: () => []
25
- },
26
- fixedType: {
27
- type: String,
28
- default: null
29
- }
9
+ const sourceType = "table";
10
+ const renderType = "footer";
11
+ var footer_default = defineVxeComponent({
12
+ name: "VxeTableFooter",
13
+ props: {
14
+ footerTableData: {
15
+ type: Array,
16
+ default: () => []
30
17
  },
31
- setup(props) {
32
- const $xeTable = inject('$xeTable', {});
33
- const { xID, props: tableProps, reactData: tableReactData, internalData: tableInternalData } = $xeTable;
34
- const { computeFooterTooltipOpts, computeColumnOpts, computeCellOpts, computeFooterCellOpts, computeDefaultRowHeight, computeResizableOpts, computeVirtualXOpts, computeIsFooterRenderOptimize, computeRendererOpts } = $xeTable.getComputeMaps();
35
- const refElem = ref();
36
- const refFooterScroll = ref();
37
- const refFooterTable = ref();
38
- const refFooterColgroup = ref();
39
- const refFooterTFoot = ref();
40
- const refFooterXSpace = ref();
41
- const renderRows = (isOptimizeMode, tableColumn, footerTableData, row, $rowIndex, _rowIndex) => {
42
- const $xeGrid = $xeTable.xeGrid;
43
- const $xeGantt = $xeTable.xeGantt;
44
- const { fixedType } = props;
45
- const { resizable: allResizable, border, footerCellClassName, footerCellStyle, footerAlign: allFooterAlign, footerSpanMethod, align: allAlign, columnKey, showFooterOverflow: allColumnFooterOverflow } = tableProps;
46
- const { scrollXLoad, scrollYLoad, overflowX, mergeFootFlag, currColFlag } = tableReactData;
47
- const { fullColumnIdData, mergeFooterList, mergeFooterCellMaps, scrollXStore, currentCol } = tableInternalData;
48
- const virtualXOpts = computeVirtualXOpts.value;
49
- const footerTooltipOpts = computeFooterTooltipOpts.value;
50
- const resizableOpts = computeResizableOpts.value;
51
- const { isAllColumnDrag } = resizableOpts;
52
- const columnOpts = computeColumnOpts.value;
53
- const defaultRowHeight = computeDefaultRowHeight.value;
54
- const cellOpts = computeCellOpts.value;
55
- const footerCellOpts = computeFooterCellOpts.value;
56
- const currCellHeight = getCalcHeight(footerCellOpts.height) || defaultRowHeight;
57
- const rendererOpts = computeRendererOpts.value;
58
- return tableColumn.map((column, $columnIndex) => {
59
- const { type, showFooterOverflow, footerAlign, align, footerClassName, editRender, cellRender } = column;
60
- const colid = column.id;
61
- const colRest = fullColumnIdData[colid] || {};
62
- const renderOpts = editRender || cellRender;
63
- const compConf = renderOpts && renderOpts.name ? (rendererOpts[renderOpts.name] || renderer.get(renderOpts.name)) : null;
64
- const showAllTip = footerTooltipOpts.showAll;
65
- const fixedHiddenColumn = overflowX && (fixedType ? column.fixed !== fixedType : !!column.fixed);
66
- const cellPadding = getDefaultConfig(footerCellOpts.padding, cellOpts.padding);
67
- const isAllCellPadding = cellPadding === true;
68
- const isCellPaddingTop = cellPadding ? (isAllCellPadding || cellPadding.top !== false) : false;
69
- const isCellPaddingBottom = cellPadding ? (isAllCellPadding || cellPadding.bottom !== false) : false;
70
- const isCellPaddingLeft = cellPadding ? (isAllCellPadding || cellPadding.left !== false) : false;
71
- const isCellPaddingRight = cellPadding ? (isAllCellPadding || cellPadding.right !== false) : false;
72
- const footOverflow = getDefaultConfig(showFooterOverflow, allColumnFooterOverflow);
73
- const footAlign = footerAlign || (compConf ? compConf.tableFooterCellAlign : '') || allFooterAlign || align || (compConf ? compConf.tableCellAlign : '') || allAlign;
74
- const showEllipsis = (footOverflow === true ? footerTooltipOpts.mode : footOverflow) === 'ellipsis';
75
- const showTitle = (footOverflow === true ? footerTooltipOpts.mode : footOverflow) === 'title';
76
- const showTooltip = (footOverflow === true ? footerTooltipOpts.mode : footOverflow) === 'tooltip';
77
- const hasEllipsis = showTitle || showTooltip || showEllipsis;
78
- const showResizable = (XEUtils.isBoolean(column.resizable) ? column.resizable : (columnOpts.resizable || allResizable));
79
- const attrs = { colid };
80
- const tfOns = {};
81
- const columnIndex = colRest.index;
82
- const _columnIndex = colRest._index;
83
- const itemIndex = _columnIndex;
84
- const cellParams = {
85
- $table: $xeTable,
86
- $grid: $xeGrid,
87
- $gantt: $xeGantt,
88
- row,
89
- rowIndex: _rowIndex,
90
- _rowIndex,
91
- $rowIndex,
92
- column,
93
- columnIndex,
94
- $columnIndex,
95
- _columnIndex,
96
- itemIndex,
97
- items: row,
98
- fixed: fixedType,
99
- source: sourceType,
100
- type: renderType,
101
- data: footerTableData
102
- };
103
- if (showTitle || showTooltip || showAllTip) {
104
- tfOns.onMouseenter = (evnt) => {
105
- if (showTitle) {
106
- updateCellTitle(evnt.currentTarget, column);
107
- }
108
- else if (showTooltip || showAllTip) {
109
- $xeTable.triggerFooterTooltipEvent(evnt, cellParams);
110
- }
111
- };
112
- }
113
- if (showTooltip || showAllTip) {
114
- tfOns.onMouseleave = (evnt) => {
115
- if (showTooltip || showAllTip) {
116
- $xeTable.handleTargetLeaveEvent(evnt);
117
- }
118
- };
119
- }
120
- tfOns.onClick = (evnt) => {
121
- $xeTable.triggerFooterCellClickEvent(evnt, cellParams);
122
- };
123
- tfOns.onDblclick = (evnt) => {
124
- $xeTable.triggerFooterCellDblclickEvent(evnt, cellParams);
125
- };
126
- let isMergeCell = false;
127
- // 合并行或列
128
- if (mergeFootFlag && mergeFooterList.length) {
129
- const spanRest = mergeFooterCellMaps[`${_rowIndex}:${_columnIndex}`];
130
- if (spanRest) {
131
- const { rowspan, colspan } = spanRest;
132
- if (!rowspan || !colspan) {
133
- return null;
134
- }
135
- if (rowspan > 1) {
136
- isMergeCell = true;
137
- attrs.rowspan = rowspan;
138
- }
139
- if (colspan > 1) {
140
- isMergeCell = true;
141
- attrs.colspan = colspan;
142
- }
143
- }
144
- }
145
- else if (footerSpanMethod) {
146
- // 自定义合并方法
147
- const { rowspan = 1, colspan = 1 } = footerSpanMethod(cellParams) || {};
148
- if (!rowspan || !colspan) {
149
- return null;
150
- }
151
- if (rowspan > 1) {
152
- attrs.rowspan = rowspan;
153
- }
154
- if (colspan > 1) {
155
- attrs.colspan = colspan;
156
- }
157
- }
158
- const isLastColumn = $columnIndex === tableColumn.length - 1;
159
- const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
160
- let isVNPreEmptyStatus = false;
161
- if (isOptimizeMode && overflowX && !isMergeCell) {
162
- if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
163
- isVNPreEmptyStatus = true;
164
- }
165
- }
166
- const tcStyle = {};
167
- if (hasEllipsis) {
168
- tcStyle.height = `${currCellHeight}px`;
169
- }
170
- else {
171
- tcStyle.minHeight = `${currCellHeight}px`;
172
- }
173
- return h('td', Object.assign(Object.assign(Object.assign(Object.assign({ class: ['vxe-table--column vxe-footer--column', column.id, {
174
- [`col--${footAlign}`]: footAlign,
175
- [`col--${type}`]: type,
176
- 'col--last': isLastColumn,
177
- 'fixed--width': !isAutoCellWidth,
178
- 'fixed--hidden': fixedHiddenColumn,
179
- 'is--pg-top': isCellPaddingTop,
180
- 'is--pg-bottom': isCellPaddingBottom,
181
- 'is--pg-left': isCellPaddingLeft,
182
- 'is--pg-right': isCellPaddingRight,
183
- 'col--ellipsis': hasEllipsis,
184
- 'col--current': currColFlag && currentCol === column
185
- }, getPropClass(footerClassName, cellParams), getPropClass(footerCellClassName, cellParams)] }, attrs), { style: footerCellStyle ? (XEUtils.isFunction(footerCellStyle) ? footerCellStyle(cellParams) : footerCellStyle) : null }), tfOns), { key: columnKey || scrollXLoad || scrollYLoad || columnOpts.useKey || columnOpts.drag ? column.id : $columnIndex }), [
186
- h('div', {
187
- class: ['vxe-cell', {
188
- 'c--title': showTitle,
189
- 'c--tooltip': showTooltip,
190
- 'c--ellipsis': showEllipsis
191
- }],
192
- style: tcStyle
193
- }, isVNPreEmptyStatus
194
- ? []
195
- : [
196
- h('div', {
197
- colid,
198
- class: 'vxe-cell--wrapper vxe-footer-cell--wrapper'
199
- }, column.renderFooter(cellParams))
200
- ]),
201
- /**
202
- * 列宽拖动
203
- */
204
- !fixedHiddenColumn && showResizable && isAllColumnDrag
205
- ? h('div', {
206
- class: ['vxe-cell--col-resizable', {
207
- 'is--line': !border || border === 'none'
208
- }],
209
- onMousedown: (evnt) => $xeTable.handleColResizeMousedownEvent(evnt, fixedType, cellParams),
210
- onDblclick: (evnt) => $xeTable.handleColResizeDblclickEvent(evnt, cellParams)
211
- })
212
- : renderEmptyElement($xeTable)
213
- ]);
214
- });
18
+ tableColumn: {
19
+ type: Array,
20
+ default: () => []
21
+ },
22
+ fixedColumn: {
23
+ type: Array,
24
+ default: () => []
25
+ },
26
+ fixedType: {
27
+ type: String,
28
+ default: null
29
+ }
30
+ },
31
+ setup(props) {
32
+ const $xeTable = inject("$xeTable", {});
33
+ const { xID, props: tableProps, reactData: tableReactData, internalData: tableInternalData } = $xeTable;
34
+ const { computeFooterTooltipOpts, computeColumnOpts, computeCellOpts, computeFooterCellOpts, computeDefaultRowHeight, computeResizableOpts, computeVirtualXOpts, computeIsFooterRenderOptimize, computeRendererOpts } = $xeTable.getComputeMaps();
35
+ const refElem = ref();
36
+ const refFooterScroll = ref();
37
+ const refFooterTable = ref();
38
+ const refFooterColgroup = ref();
39
+ const refFooterTFoot = ref();
40
+ const refFooterXSpace = ref();
41
+ const renderRows = (isOptimizeMode, tableColumn, footerTableData, row, $rowIndex, _rowIndex) => {
42
+ const $xeGrid = $xeTable.xeGrid;
43
+ const $xeGantt = $xeTable.xeGantt;
44
+ const { fixedType } = props;
45
+ const { resizable: allResizable, border, footerCellClassName, footerCellStyle, footerAlign: allFooterAlign, footerSpanMethod, align: allAlign, columnKey, showFooterOverflow: allColumnFooterOverflow } = tableProps;
46
+ const { scrollXLoad, scrollYLoad, overflowX, mergeFootFlag, currColFlag } = tableReactData;
47
+ const { fullColumnIdData, mergeFooterList, mergeFooterCellMaps, scrollXStore, currentCol } = tableInternalData;
48
+ const virtualXOpts = computeVirtualXOpts.value;
49
+ const footerTooltipOpts = computeFooterTooltipOpts.value;
50
+ const resizableOpts = computeResizableOpts.value;
51
+ const { isAllColumnDrag } = resizableOpts;
52
+ const columnOpts = computeColumnOpts.value;
53
+ const defaultRowHeight = computeDefaultRowHeight.value;
54
+ const cellOpts = computeCellOpts.value;
55
+ const footerCellOpts = computeFooterCellOpts.value;
56
+ const currCellHeight = getCalcHeight(footerCellOpts.height) || defaultRowHeight;
57
+ const rendererOpts = computeRendererOpts.value;
58
+ return tableColumn.map((column, $columnIndex) => {
59
+ const { type, showFooterOverflow, footerAlign, align, footerClassName, editRender, cellRender } = column;
60
+ const colid = column.id;
61
+ const colRest = fullColumnIdData[colid] || {};
62
+ const renderOpts = editRender || cellRender;
63
+ const compConf = renderOpts && renderOpts.name ? rendererOpts[renderOpts.name] || renderer.get(renderOpts.name) : null;
64
+ const showAllTip = footerTooltipOpts.showAll;
65
+ const fixedHiddenColumn = overflowX && (fixedType ? column.fixed !== fixedType : !!column.fixed);
66
+ const cellPadding = getDefaultConfig(footerCellOpts.padding, cellOpts.padding);
67
+ const isAllCellPadding = cellPadding === true;
68
+ const isCellPaddingTop = cellPadding ? isAllCellPadding || cellPadding.top !== false : false;
69
+ const isCellPaddingBottom = cellPadding ? isAllCellPadding || cellPadding.bottom !== false : false;
70
+ const isCellPaddingLeft = cellPadding ? isAllCellPadding || cellPadding.left !== false : false;
71
+ const isCellPaddingRight = cellPadding ? isAllCellPadding || cellPadding.right !== false : false;
72
+ const footOverflow = getDefaultConfig(showFooterOverflow, allColumnFooterOverflow);
73
+ const footAlign = footerAlign || (compConf ? compConf.tableFooterCellAlign : "") || allFooterAlign || align || (compConf ? compConf.tableCellAlign : "") || allAlign;
74
+ const showEllipsis = (footOverflow === true ? footerTooltipOpts.mode : footOverflow) === "ellipsis";
75
+ const showTitle = (footOverflow === true ? footerTooltipOpts.mode : footOverflow) === "title";
76
+ const showTooltip = (footOverflow === true ? footerTooltipOpts.mode : footOverflow) === "tooltip";
77
+ const hasEllipsis = showTitle || showTooltip || showEllipsis;
78
+ const showResizable = XEUtils.isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || allResizable;
79
+ const attrs = { colid };
80
+ const tfOns = {};
81
+ const columnIndex = colRest.index;
82
+ const _columnIndex = colRest._index;
83
+ const itemIndex = _columnIndex;
84
+ const cellParams = {
85
+ $table: $xeTable,
86
+ $grid: $xeGrid,
87
+ $gantt: $xeGantt,
88
+ row,
89
+ rowIndex: _rowIndex,
90
+ _rowIndex,
91
+ $rowIndex,
92
+ column,
93
+ columnIndex,
94
+ $columnIndex,
95
+ _columnIndex,
96
+ itemIndex,
97
+ items: row,
98
+ fixed: fixedType,
99
+ source: sourceType,
100
+ type: renderType,
101
+ data: footerTableData
102
+ };
103
+ if (showTitle || showTooltip || showAllTip) {
104
+ tfOns.onMouseenter = (evnt) => {
105
+ if (showTitle) {
106
+ updateCellTitle(evnt.currentTarget, column);
107
+ } else if (showTooltip || showAllTip) {
108
+ $xeTable.triggerFooterTooltipEvent(evnt, cellParams);
109
+ }
110
+ };
111
+ }
112
+ if (showTooltip || showAllTip) {
113
+ tfOns.onMouseleave = (evnt) => {
114
+ if (showTooltip || showAllTip) {
115
+ $xeTable.handleTargetLeaveEvent(evnt);
116
+ }
117
+ };
118
+ }
119
+ tfOns.onClick = (evnt) => {
120
+ $xeTable.triggerFooterCellClickEvent(evnt, cellParams);
215
121
  };
216
- const renderHeads = (isOptimizeMode, renderColumnList) => {
217
- const { fixedType, footerTableData } = props;
218
- const { footerRowClassName, footerRowStyle } = tableProps;
219
- return footerTableData.map((row, _rowIndex) => {
220
- const $rowIndex = _rowIndex;
221
- const rowParams = { $table: $xeTable, row, rowIndex: _rowIndex, _rowIndex, $rowIndex, fixed: fixedType, type: renderType };
222
- return h('tr', {
223
- key: _rowIndex,
224
- class: [
225
- 'vxe-footer--row',
226
- footerRowClassName ? XEUtils.isFunction(footerRowClassName) ? footerRowClassName(rowParams) : footerRowClassName : ''
227
- ],
228
- style: footerRowStyle ? (XEUtils.isFunction(footerRowStyle) ? footerRowStyle(rowParams) : footerRowStyle) : null
229
- }, renderRows(isOptimizeMode, renderColumnList, footerTableData, row, _rowIndex, _rowIndex));
230
- });
122
+ tfOns.onDblclick = (evnt) => {
123
+ $xeTable.triggerFooterCellDblclickEvent(evnt, cellParams);
231
124
  };
232
- const renderVN = () => {
233
- const { fixedType, fixedColumn, tableColumn } = props;
234
- const { visibleColumn, fullColumnIdData } = tableInternalData;
235
- const { isGroup, isColLoading, overflowX, scrollXLoad, dragCol } = tableReactData;
236
- const isFooterRenderOptimize = computeIsFooterRenderOptimize.value;
237
- let renderColumnList = tableColumn;
238
- const isOptimizeMode = isFooterRenderOptimize;
239
- if (!isOptimizeMode || (!isColLoading && (fixedType || !overflowX))) {
240
- renderColumnList = visibleColumn;
125
+ let isMergeCell = false;
126
+ if (mergeFootFlag && mergeFooterList.length) {
127
+ const spanRest = mergeFooterCellMaps[`${_rowIndex}:${_columnIndex}`];
128
+ if (spanRest) {
129
+ const { rowspan, colspan } = spanRest;
130
+ if (!rowspan || !colspan) {
131
+ return null;
241
132
  }
242
- if (fixedType) {
243
- if (isOptimizeMode) {
244
- renderColumnList = fixedColumn || [];
245
- }
133
+ if (rowspan > 1) {
134
+ isMergeCell = true;
135
+ attrs.rowspan = rowspan;
246
136
  }
247
- if (!fixedType && !isGroup) {
248
- // 列拖拽
249
- if (scrollXLoad && dragCol) {
250
- if (renderColumnList.length > 2) {
251
- const dCowRest = fullColumnIdData[dragCol.id];
252
- if (dCowRest) {
253
- const dcIndex = dCowRest._index;
254
- const firstCol = renderColumnList[0];
255
- const lastCol = renderColumnList[renderColumnList.length - 1];
256
- const firstColRest = fullColumnIdData[firstCol.id];
257
- const lastColRest = fullColumnIdData[lastCol.id];
258
- if (firstColRest && lastColRest) {
259
- const fcIndex = firstColRest._index;
260
- const lcIndex = lastColRest._index;
261
- if (dcIndex < fcIndex) {
262
- renderColumnList = [dragCol].concat(renderColumnList);
263
- }
264
- else if (dcIndex > lcIndex) {
265
- renderColumnList = renderColumnList.concat([dragCol]);
266
- }
267
- }
268
- }
269
- }
137
+ if (colspan > 1) {
138
+ isMergeCell = true;
139
+ attrs.colspan = colspan;
140
+ }
141
+ }
142
+ } else if (footerSpanMethod) {
143
+ const { rowspan = 1, colspan = 1 } = footerSpanMethod(cellParams) || {};
144
+ if (!rowspan || !colspan) {
145
+ return null;
146
+ }
147
+ if (rowspan > 1) {
148
+ attrs.rowspan = rowspan;
149
+ }
150
+ if (colspan > 1) {
151
+ attrs.colspan = colspan;
152
+ }
153
+ }
154
+ const isLastColumn = $columnIndex === tableColumn.length - 1;
155
+ const isAutoCellWidth = !column.resizeWidth && (column.minWidth === "auto" || column.width === "auto");
156
+ let isVNPreEmptyStatus = false;
157
+ if (isOptimizeMode && overflowX && !isMergeCell) {
158
+ if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
159
+ isVNPreEmptyStatus = true;
160
+ }
161
+ }
162
+ const tcStyle = {};
163
+ if (hasEllipsis) {
164
+ tcStyle.height = `${currCellHeight}px`;
165
+ } else {
166
+ tcStyle.minHeight = `${currCellHeight}px`;
167
+ }
168
+ return h("td", {
169
+ class: ["vxe-table--column vxe-footer--column", column.id, {
170
+ [`col--${footAlign}`]: footAlign,
171
+ [`col--${type}`]: type,
172
+ "col--last": isLastColumn,
173
+ "fixed--width": !isAutoCellWidth,
174
+ "fixed--hidden": fixedHiddenColumn,
175
+ "is--pg-top": isCellPaddingTop,
176
+ "is--pg-bottom": isCellPaddingBottom,
177
+ "is--pg-left": isCellPaddingLeft,
178
+ "is--pg-right": isCellPaddingRight,
179
+ "col--ellipsis": hasEllipsis,
180
+ "col--current": currColFlag && currentCol === column
181
+ }, getPropClass(footerClassName, cellParams), getPropClass(footerCellClassName, cellParams)],
182
+ ...attrs,
183
+ style: footerCellStyle ? XEUtils.isFunction(footerCellStyle) ? footerCellStyle(cellParams) : footerCellStyle : null,
184
+ ...tfOns,
185
+ key: columnKey || scrollXLoad || scrollYLoad || columnOpts.useKey || columnOpts.drag ? column.id : $columnIndex
186
+ }, [
187
+ h("div", {
188
+ class: ["vxe-cell", {
189
+ "c--title": showTitle,
190
+ "c--tooltip": showTooltip,
191
+ "c--ellipsis": showEllipsis
192
+ }],
193
+ style: tcStyle
194
+ }, isVNPreEmptyStatus ? [] : [
195
+ h("div", {
196
+ colid,
197
+ class: "vxe-cell--wrapper vxe-footer-cell--wrapper"
198
+ }, column.renderFooter(cellParams))
199
+ ]),
200
+ /**
201
+ * 列宽拖动
202
+ */
203
+ !fixedHiddenColumn && showResizable && isAllColumnDrag ? h("div", {
204
+ class: ["vxe-cell--col-resizable", {
205
+ "is--line": !border || border === "none"
206
+ }],
207
+ onMousedown: (evnt) => $xeTable.handleColResizeMousedownEvent(evnt, fixedType, cellParams),
208
+ onDblclick: (evnt) => $xeTable.handleColResizeDblclickEvent(evnt, cellParams)
209
+ }) : renderEmptyElement($xeTable)
210
+ ]);
211
+ });
212
+ };
213
+ const renderHeads = (isOptimizeMode, renderColumnList) => {
214
+ const { fixedType, footerTableData } = props;
215
+ const { footerRowClassName, footerRowStyle } = tableProps;
216
+ return footerTableData.map((row, _rowIndex) => {
217
+ const $rowIndex = _rowIndex;
218
+ const rowParams = { $table: $xeTable, row, rowIndex: _rowIndex, _rowIndex, $rowIndex, fixed: fixedType, type: renderType };
219
+ return h("tr", {
220
+ key: _rowIndex,
221
+ class: [
222
+ "vxe-footer--row",
223
+ footerRowClassName ? XEUtils.isFunction(footerRowClassName) ? footerRowClassName(rowParams) : footerRowClassName : ""
224
+ ],
225
+ style: footerRowStyle ? XEUtils.isFunction(footerRowStyle) ? footerRowStyle(rowParams) : footerRowStyle : null
226
+ }, renderRows(isOptimizeMode, renderColumnList, footerTableData, row, _rowIndex, _rowIndex));
227
+ });
228
+ };
229
+ const renderVN = () => {
230
+ const { fixedType, fixedColumn, tableColumn } = props;
231
+ const { visibleColumn, fullColumnIdData } = tableInternalData;
232
+ const { isGroup, isColLoading, overflowX, scrollXLoad, dragCol } = tableReactData;
233
+ const isFooterRenderOptimize = computeIsFooterRenderOptimize.value;
234
+ let renderColumnList = tableColumn;
235
+ const isOptimizeMode = isFooterRenderOptimize;
236
+ if (!isOptimizeMode || !isColLoading && (fixedType || !overflowX)) {
237
+ renderColumnList = visibleColumn;
238
+ }
239
+ if (fixedType) {
240
+ if (isOptimizeMode) {
241
+ renderColumnList = fixedColumn || [];
242
+ }
243
+ }
244
+ if (!fixedType && !isGroup) {
245
+ if (scrollXLoad && dragCol) {
246
+ if (renderColumnList.length > 2) {
247
+ const dCowRest = fullColumnIdData[dragCol.id];
248
+ if (dCowRest) {
249
+ const dcIndex = dCowRest._index;
250
+ const firstCol = renderColumnList[0];
251
+ const lastCol = renderColumnList[renderColumnList.length - 1];
252
+ const firstColRest = fullColumnIdData[firstCol.id];
253
+ const lastColRest = fullColumnIdData[lastCol.id];
254
+ if (firstColRest && lastColRest) {
255
+ const fcIndex = firstColRest._index;
256
+ const lcIndex = lastColRest._index;
257
+ if (dcIndex < fcIndex) {
258
+ renderColumnList = [dragCol].concat(renderColumnList);
259
+ } else if (dcIndex > lcIndex) {
260
+ renderColumnList = renderColumnList.concat([dragCol]);
270
261
  }
262
+ }
271
263
  }
272
- return h('div', {
273
- ref: refElem,
274
- class: ['vxe-table--footer-wrapper', fixedType ? `fixed-${fixedType}--wrapper` : 'body--wrapper'],
275
- xid: xID
276
- }, [
277
- h('div', {
278
- ref: refFooterScroll,
279
- class: 'vxe-table--footer-inner-wrapper',
280
- onScroll(evnt) {
281
- $xeTable.triggerFooterScrollEvent(evnt, fixedType);
282
- }
283
- }, [
284
- fixedType
285
- ? renderEmptyElement($xeTable)
286
- : h('div', {
287
- ref: refFooterXSpace,
288
- class: 'vxe-body--x-space'
289
- }),
290
- h('table', {
291
- ref: refFooterTable,
292
- class: 'vxe-table--footer',
293
- xid: xID,
294
- cellspacing: 0,
295
- cellpadding: 0,
296
- border: 0,
297
- xvm: isOptimizeMode ? '1' : null
298
- }, [
299
- /**
300
- * 列宽
301
- */
302
- h('colgroup', {
303
- ref: refFooterColgroup
304
- }, renderColumnList.map((column, $columnIndex) => {
305
- return h('col', {
306
- name: column.id,
307
- key: $columnIndex,
308
- style: {
309
- width: `${column.renderWidth}px`
310
- }
311
- });
312
- })),
313
- /**
314
- * 底部
315
- */
316
- h('tfoot', {
317
- ref: refFooterTFoot
318
- }, renderHeads(isOptimizeMode, renderColumnList))
319
- ])
320
- ])
321
- ]);
322
- };
323
- onMounted(() => {
324
- nextTick(() => {
325
- const { fixedType } = props;
326
- const { elemStore } = tableInternalData;
327
- const prefix = `${fixedType || 'main'}-footer-`;
328
- elemStore[`${prefix}wrapper`] = refElem;
329
- elemStore[`${prefix}scroll`] = refFooterScroll;
330
- elemStore[`${prefix}table`] = refFooterTable;
331
- elemStore[`${prefix}colgroup`] = refFooterColgroup;
332
- elemStore[`${prefix}list`] = refFooterTFoot;
333
- elemStore[`${prefix}xSpace`] = refFooterXSpace;
334
- });
335
- });
336
- onUnmounted(() => {
337
- const { fixedType } = props;
338
- const { elemStore } = tableInternalData;
339
- const prefix = `${fixedType || 'main'}-footer-`;
340
- elemStore[`${prefix}wrapper`] = null;
341
- elemStore[`${prefix}scroll`] = null;
342
- elemStore[`${prefix}table`] = null;
343
- elemStore[`${prefix}colgroup`] = null;
344
- elemStore[`${prefix}list`] = null;
345
- elemStore[`${prefix}xSpace`] = null;
346
- });
347
- return renderVN;
348
- }
264
+ }
265
+ }
266
+ }
267
+ return h("div", {
268
+ ref: refElem,
269
+ class: ["vxe-table--footer-wrapper", fixedType ? `fixed-${fixedType}--wrapper` : "body--wrapper"],
270
+ xid: xID
271
+ }, [
272
+ h("div", {
273
+ ref: refFooterScroll,
274
+ class: "vxe-table--footer-inner-wrapper",
275
+ onScroll(evnt) {
276
+ $xeTable.triggerFooterScrollEvent(evnt, fixedType);
277
+ }
278
+ }, [
279
+ fixedType ? renderEmptyElement($xeTable) : h("div", {
280
+ ref: refFooterXSpace,
281
+ class: "vxe-body--x-space"
282
+ }),
283
+ h("table", {
284
+ ref: refFooterTable,
285
+ class: "vxe-table--footer",
286
+ xid: xID,
287
+ cellspacing: 0,
288
+ cellpadding: 0,
289
+ border: 0,
290
+ xvm: isOptimizeMode ? "1" : null
291
+ }, [
292
+ /**
293
+ * 列宽
294
+ */
295
+ h("colgroup", {
296
+ ref: refFooterColgroup
297
+ }, renderColumnList.map((column, $columnIndex) => {
298
+ return h("col", {
299
+ name: column.id,
300
+ key: $columnIndex,
301
+ style: {
302
+ width: `${column.renderWidth}px`
303
+ }
304
+ });
305
+ })),
306
+ /**
307
+ * 底部
308
+ */
309
+ h("tfoot", {
310
+ ref: refFooterTFoot
311
+ }, renderHeads(isOptimizeMode, renderColumnList))
312
+ ])
313
+ ])
314
+ ]);
315
+ };
316
+ onMounted(() => {
317
+ nextTick(() => {
318
+ const { fixedType } = props;
319
+ const { elemStore } = tableInternalData;
320
+ const prefix = `${fixedType || "main"}-footer-`;
321
+ elemStore[`${prefix}wrapper`] = refElem;
322
+ elemStore[`${prefix}scroll`] = refFooterScroll;
323
+ elemStore[`${prefix}table`] = refFooterTable;
324
+ elemStore[`${prefix}colgroup`] = refFooterColgroup;
325
+ elemStore[`${prefix}list`] = refFooterTFoot;
326
+ elemStore[`${prefix}xSpace`] = refFooterXSpace;
327
+ });
328
+ });
329
+ onUnmounted(() => {
330
+ const { fixedType } = props;
331
+ const { elemStore } = tableInternalData;
332
+ const prefix = `${fixedType || "main"}-footer-`;
333
+ elemStore[`${prefix}wrapper`] = null;
334
+ elemStore[`${prefix}scroll`] = null;
335
+ elemStore[`${prefix}table`] = null;
336
+ elemStore[`${prefix}colgroup`] = null;
337
+ elemStore[`${prefix}list`] = null;
338
+ elemStore[`${prefix}xSpace`] = null;
339
+ });
340
+ return renderVN;
341
+ }
349
342
  });
343
+ export {
344
+ footer_default as default
345
+ };