@element-plus/nightly 0.0.20220506 → 0.0.20220509

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 (459) hide show
  1. package/README.md +5 -0
  2. package/attributes.json +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.full.js +517 -404
  5. package/dist/index.full.min.js +17 -17
  6. package/dist/index.full.min.js.map +1 -1
  7. package/dist/index.full.min.mjs +17 -17
  8. package/dist/index.full.min.mjs.map +1 -1
  9. package/dist/index.full.mjs +516 -405
  10. package/dist/locale/af.js +1 -1
  11. package/dist/locale/af.min.js +1 -1
  12. package/dist/locale/af.min.mjs +1 -1
  13. package/dist/locale/af.mjs +1 -1
  14. package/dist/locale/ar.js +1 -1
  15. package/dist/locale/ar.min.js +1 -1
  16. package/dist/locale/ar.min.mjs +1 -1
  17. package/dist/locale/ar.mjs +1 -1
  18. package/dist/locale/az.js +1 -1
  19. package/dist/locale/az.min.js +1 -1
  20. package/dist/locale/az.min.mjs +1 -1
  21. package/dist/locale/az.mjs +1 -1
  22. package/dist/locale/bg.js +1 -1
  23. package/dist/locale/bg.min.js +1 -1
  24. package/dist/locale/bg.min.mjs +1 -1
  25. package/dist/locale/bg.mjs +1 -1
  26. package/dist/locale/bn.js +1 -1
  27. package/dist/locale/bn.min.js +1 -1
  28. package/dist/locale/bn.min.mjs +1 -1
  29. package/dist/locale/bn.mjs +1 -1
  30. package/dist/locale/ca.js +1 -1
  31. package/dist/locale/ca.min.js +1 -1
  32. package/dist/locale/ca.min.mjs +1 -1
  33. package/dist/locale/ca.mjs +1 -1
  34. package/dist/locale/cs.js +1 -1
  35. package/dist/locale/cs.min.js +1 -1
  36. package/dist/locale/cs.min.mjs +1 -1
  37. package/dist/locale/cs.mjs +1 -1
  38. package/dist/locale/da.js +1 -1
  39. package/dist/locale/da.min.js +1 -1
  40. package/dist/locale/da.min.mjs +1 -1
  41. package/dist/locale/da.mjs +1 -1
  42. package/dist/locale/de.js +1 -1
  43. package/dist/locale/de.min.js +1 -1
  44. package/dist/locale/de.min.mjs +1 -1
  45. package/dist/locale/de.mjs +1 -1
  46. package/dist/locale/el.js +1 -1
  47. package/dist/locale/el.min.js +1 -1
  48. package/dist/locale/el.min.mjs +1 -1
  49. package/dist/locale/el.mjs +1 -1
  50. package/dist/locale/en.js +1 -1
  51. package/dist/locale/en.min.js +1 -1
  52. package/dist/locale/en.min.mjs +1 -1
  53. package/dist/locale/en.mjs +1 -1
  54. package/dist/locale/eo.js +1 -1
  55. package/dist/locale/eo.min.js +1 -1
  56. package/dist/locale/eo.min.mjs +1 -1
  57. package/dist/locale/eo.mjs +1 -1
  58. package/dist/locale/es.js +1 -1
  59. package/dist/locale/es.min.js +1 -1
  60. package/dist/locale/es.min.mjs +1 -1
  61. package/dist/locale/es.mjs +1 -1
  62. package/dist/locale/et.js +1 -1
  63. package/dist/locale/et.min.js +1 -1
  64. package/dist/locale/et.min.mjs +1 -1
  65. package/dist/locale/et.mjs +1 -1
  66. package/dist/locale/eu.js +1 -1
  67. package/dist/locale/eu.min.js +1 -1
  68. package/dist/locale/eu.min.mjs +1 -1
  69. package/dist/locale/eu.mjs +1 -1
  70. package/dist/locale/fa.js +1 -1
  71. package/dist/locale/fa.min.js +1 -1
  72. package/dist/locale/fa.min.mjs +1 -1
  73. package/dist/locale/fa.mjs +1 -1
  74. package/dist/locale/fi.js +1 -1
  75. package/dist/locale/fi.min.js +1 -1
  76. package/dist/locale/fi.min.mjs +1 -1
  77. package/dist/locale/fi.mjs +1 -1
  78. package/dist/locale/fr.js +1 -1
  79. package/dist/locale/fr.min.js +1 -1
  80. package/dist/locale/fr.min.mjs +1 -1
  81. package/dist/locale/fr.mjs +1 -1
  82. package/dist/locale/he.js +1 -1
  83. package/dist/locale/he.min.js +1 -1
  84. package/dist/locale/he.min.mjs +1 -1
  85. package/dist/locale/he.mjs +1 -1
  86. package/dist/locale/hr.js +1 -1
  87. package/dist/locale/hr.min.js +1 -1
  88. package/dist/locale/hr.min.mjs +1 -1
  89. package/dist/locale/hr.mjs +1 -1
  90. package/dist/locale/hu.js +1 -1
  91. package/dist/locale/hu.min.js +1 -1
  92. package/dist/locale/hu.min.mjs +1 -1
  93. package/dist/locale/hu.mjs +1 -1
  94. package/dist/locale/hy-am.js +1 -1
  95. package/dist/locale/hy-am.min.js +1 -1
  96. package/dist/locale/hy-am.min.mjs +1 -1
  97. package/dist/locale/hy-am.mjs +1 -1
  98. package/dist/locale/id.js +1 -1
  99. package/dist/locale/id.min.js +1 -1
  100. package/dist/locale/id.min.mjs +1 -1
  101. package/dist/locale/id.mjs +1 -1
  102. package/dist/locale/it.js +1 -1
  103. package/dist/locale/it.min.js +1 -1
  104. package/dist/locale/it.min.mjs +1 -1
  105. package/dist/locale/it.mjs +1 -1
  106. package/dist/locale/ja.js +1 -1
  107. package/dist/locale/ja.min.js +1 -1
  108. package/dist/locale/ja.min.mjs +1 -1
  109. package/dist/locale/ja.mjs +1 -1
  110. package/dist/locale/kk.js +1 -1
  111. package/dist/locale/kk.min.js +1 -1
  112. package/dist/locale/kk.min.mjs +1 -1
  113. package/dist/locale/kk.mjs +1 -1
  114. package/dist/locale/km.js +1 -1
  115. package/dist/locale/km.min.js +1 -1
  116. package/dist/locale/km.min.mjs +1 -1
  117. package/dist/locale/km.mjs +1 -1
  118. package/dist/locale/ko.js +1 -1
  119. package/dist/locale/ko.min.js +1 -1
  120. package/dist/locale/ko.min.mjs +1 -1
  121. package/dist/locale/ko.mjs +1 -1
  122. package/dist/locale/ku.js +1 -1
  123. package/dist/locale/ku.min.js +1 -1
  124. package/dist/locale/ku.min.mjs +1 -1
  125. package/dist/locale/ku.mjs +1 -1
  126. package/dist/locale/ky.js +1 -1
  127. package/dist/locale/ky.min.js +1 -1
  128. package/dist/locale/ky.min.mjs +1 -1
  129. package/dist/locale/ky.mjs +1 -1
  130. package/dist/locale/lt.js +1 -1
  131. package/dist/locale/lt.min.js +1 -1
  132. package/dist/locale/lt.min.mjs +1 -1
  133. package/dist/locale/lt.mjs +1 -1
  134. package/dist/locale/lv.js +1 -1
  135. package/dist/locale/lv.min.js +1 -1
  136. package/dist/locale/lv.min.mjs +1 -1
  137. package/dist/locale/lv.mjs +1 -1
  138. package/dist/locale/mg.js +1 -1
  139. package/dist/locale/mg.min.js +1 -1
  140. package/dist/locale/mg.min.mjs +1 -1
  141. package/dist/locale/mg.mjs +1 -1
  142. package/dist/locale/mn.js +1 -1
  143. package/dist/locale/mn.min.js +1 -1
  144. package/dist/locale/mn.min.mjs +1 -1
  145. package/dist/locale/mn.mjs +1 -1
  146. package/dist/locale/nb-no.js +1 -1
  147. package/dist/locale/nb-no.min.js +1 -1
  148. package/dist/locale/nb-no.min.mjs +1 -1
  149. package/dist/locale/nb-no.mjs +1 -1
  150. package/dist/locale/nl.js +1 -1
  151. package/dist/locale/nl.min.js +1 -1
  152. package/dist/locale/nl.min.mjs +1 -1
  153. package/dist/locale/nl.mjs +1 -1
  154. package/dist/locale/pa.js +1 -1
  155. package/dist/locale/pa.min.js +1 -1
  156. package/dist/locale/pa.min.mjs +1 -1
  157. package/dist/locale/pa.mjs +1 -1
  158. package/dist/locale/pl.js +1 -1
  159. package/dist/locale/pl.min.js +1 -1
  160. package/dist/locale/pl.min.mjs +1 -1
  161. package/dist/locale/pl.mjs +1 -1
  162. package/dist/locale/pt-br.js +1 -1
  163. package/dist/locale/pt-br.min.js +1 -1
  164. package/dist/locale/pt-br.min.mjs +1 -1
  165. package/dist/locale/pt-br.mjs +1 -1
  166. package/dist/locale/pt.js +1 -1
  167. package/dist/locale/pt.min.js +1 -1
  168. package/dist/locale/pt.min.mjs +1 -1
  169. package/dist/locale/pt.mjs +1 -1
  170. package/dist/locale/ro.js +1 -1
  171. package/dist/locale/ro.min.js +1 -1
  172. package/dist/locale/ro.min.mjs +1 -1
  173. package/dist/locale/ro.mjs +1 -1
  174. package/dist/locale/ru.js +1 -1
  175. package/dist/locale/ru.min.js +1 -1
  176. package/dist/locale/ru.min.mjs +1 -1
  177. package/dist/locale/ru.mjs +1 -1
  178. package/dist/locale/sk.js +1 -1
  179. package/dist/locale/sk.min.js +1 -1
  180. package/dist/locale/sk.min.mjs +1 -1
  181. package/dist/locale/sk.mjs +1 -1
  182. package/dist/locale/sl.js +1 -1
  183. package/dist/locale/sl.min.js +1 -1
  184. package/dist/locale/sl.min.mjs +1 -1
  185. package/dist/locale/sl.mjs +1 -1
  186. package/dist/locale/sr.js +1 -1
  187. package/dist/locale/sr.min.js +1 -1
  188. package/dist/locale/sr.min.mjs +1 -1
  189. package/dist/locale/sr.mjs +1 -1
  190. package/dist/locale/sv.js +1 -1
  191. package/dist/locale/sv.min.js +1 -1
  192. package/dist/locale/sv.min.mjs +1 -1
  193. package/dist/locale/sv.mjs +1 -1
  194. package/dist/locale/ta.js +1 -1
  195. package/dist/locale/ta.min.js +1 -1
  196. package/dist/locale/ta.min.mjs +1 -1
  197. package/dist/locale/ta.mjs +1 -1
  198. package/dist/locale/th.js +1 -1
  199. package/dist/locale/th.min.js +1 -1
  200. package/dist/locale/th.min.mjs +1 -1
  201. package/dist/locale/th.mjs +1 -1
  202. package/dist/locale/tk.js +1 -1
  203. package/dist/locale/tk.min.js +1 -1
  204. package/dist/locale/tk.min.mjs +1 -1
  205. package/dist/locale/tk.mjs +1 -1
  206. package/dist/locale/tr.js +1 -1
  207. package/dist/locale/tr.min.js +1 -1
  208. package/dist/locale/tr.min.mjs +1 -1
  209. package/dist/locale/tr.mjs +1 -1
  210. package/dist/locale/ug-cn.js +1 -1
  211. package/dist/locale/ug-cn.min.js +1 -1
  212. package/dist/locale/ug-cn.min.mjs +1 -1
  213. package/dist/locale/ug-cn.mjs +1 -1
  214. package/dist/locale/uk.js +1 -1
  215. package/dist/locale/uk.min.js +1 -1
  216. package/dist/locale/uk.min.mjs +1 -1
  217. package/dist/locale/uk.mjs +1 -1
  218. package/dist/locale/uz-uz.js +1 -1
  219. package/dist/locale/uz-uz.min.js +1 -1
  220. package/dist/locale/uz-uz.min.mjs +1 -1
  221. package/dist/locale/uz-uz.mjs +1 -1
  222. package/dist/locale/vi.js +1 -1
  223. package/dist/locale/vi.min.js +1 -1
  224. package/dist/locale/vi.min.mjs +1 -1
  225. package/dist/locale/vi.mjs +1 -1
  226. package/dist/locale/zh-cn.js +1 -1
  227. package/dist/locale/zh-cn.min.js +1 -1
  228. package/dist/locale/zh-cn.min.mjs +1 -1
  229. package/dist/locale/zh-cn.mjs +1 -1
  230. package/dist/locale/zh-tw.js +1 -1
  231. package/dist/locale/zh-tw.min.js +1 -1
  232. package/dist/locale/zh-tw.min.mjs +1 -1
  233. package/dist/locale/zh-tw.mjs +1 -1
  234. package/es/component2.mjs +2 -1
  235. package/es/component2.mjs.map +1 -1
  236. package/es/components/calendar/index.mjs +1 -1
  237. package/es/components/calendar/index2.mjs +2 -2
  238. package/es/components/calendar/src/calendar.mjs +1 -1
  239. package/es/components/calendar/src/calendar3.mjs +15 -237
  240. package/es/components/calendar/src/calendar3.mjs.map +1 -1
  241. package/es/components/calendar/src/calendar4.mjs +237 -15
  242. package/es/components/calendar/src/calendar4.mjs.map +1 -1
  243. package/es/components/calendar/src/date-table.mjs +1 -1
  244. package/es/components/calendar/src/date-table3.mjs +31 -153
  245. package/es/components/calendar/src/date-table3.mjs.map +1 -1
  246. package/es/components/calendar/src/date-table4.mjs +153 -31
  247. package/es/components/calendar/src/date-table4.mjs.map +1 -1
  248. package/es/components/cascader/src/index2.mjs +1 -1
  249. package/es/components/cascader/src/index2.mjs.map +1 -1
  250. package/es/components/image/index.mjs +1 -1
  251. package/es/components/image/index2.mjs +2 -2
  252. package/es/components/image/src/image.mjs +1 -1
  253. package/es/components/image/src/image3.mjs +52 -220
  254. package/es/components/image/src/image3.mjs.map +1 -1
  255. package/es/components/image/src/image4.mjs +220 -52
  256. package/es/components/image/src/image4.mjs.map +1 -1
  257. package/es/components/index.mjs +4 -3
  258. package/es/components/index.mjs.map +1 -1
  259. package/es/components/index2.mjs +1 -1
  260. package/es/components/popconfirm/index.d.ts +1182 -5
  261. package/es/components/popconfirm/src/popconfirm.vue.d.ts +1182 -5
  262. package/es/components/popconfirm/src/popconfirm4.mjs +74 -85
  263. package/es/components/popconfirm/src/popconfirm4.mjs.map +1 -1
  264. package/es/components/progress/src/progress4.mjs +4 -3
  265. package/es/components/progress/src/progress4.mjs.map +1 -1
  266. package/es/components/select-v2/src/useSelect2.mjs +1 -0
  267. package/es/components/select-v2/src/useSelect2.mjs.map +1 -1
  268. package/es/components/table-v2/index.d.ts +33 -6
  269. package/es/components/table-v2/index.mjs +2 -1
  270. package/es/components/table-v2/index.mjs.map +1 -1
  271. package/es/components/table-v2/index2.mjs +4 -1
  272. package/es/components/table-v2/index2.mjs.map +1 -1
  273. package/es/components/table-v2/src/auto-resizer.d.ts +12 -0
  274. package/es/components/table-v2/src/auto-resizer.mjs +2 -0
  275. package/es/components/table-v2/src/auto-resizer.mjs.map +1 -0
  276. package/es/components/table-v2/src/auto-resizer2.mjs +13 -0
  277. package/es/components/table-v2/src/auto-resizer2.mjs.map +1 -0
  278. package/es/components/table-v2/src/components/auto-resizer.d.ts +23 -0
  279. package/es/components/table-v2/src/components/auto-resizer.mjs +39 -0
  280. package/es/components/table-v2/src/components/auto-resizer.mjs.map +1 -0
  281. package/es/components/table-v2/src/components/row.d.ts +9 -9
  282. package/es/components/table-v2/src/components/row.mjs.map +1 -1
  283. package/es/components/table-v2/src/composables/index.d.ts +1 -0
  284. package/es/components/table-v2/src/composables/index.mjs +1 -0
  285. package/es/components/table-v2/src/composables/index.mjs.map +1 -1
  286. package/es/components/table-v2/src/composables/index2.mjs +1 -0
  287. package/es/components/table-v2/src/composables/index2.mjs.map +1 -1
  288. package/es/components/table-v2/src/composables/use-auto-resize.d.ts +7 -0
  289. package/es/components/table-v2/src/composables/use-auto-resize.mjs +2 -0
  290. package/es/components/table-v2/src/composables/use-auto-resize.mjs.map +1 -0
  291. package/es/components/table-v2/src/composables/use-auto-resize2.mjs +39 -0
  292. package/es/components/table-v2/src/composables/use-auto-resize2.mjs.map +1 -0
  293. package/es/components/table-v2/src/composables/use-row.d.ts +2 -2
  294. package/es/components/table-v2/src/composables/use-row2.mjs.map +1 -1
  295. package/es/components/table-v2/src/composables/use-scrollbar.d.ts +3 -1
  296. package/es/components/table-v2/src/composables/use-scrollbar2.mjs +5 -0
  297. package/es/components/table-v2/src/composables/use-scrollbar2.mjs.map +1 -1
  298. package/es/components/table-v2/src/renderers/cell.d.ts +1 -1
  299. package/es/components/table-v2/src/renderers/cell.mjs +12 -3
  300. package/es/components/table-v2/src/renderers/cell.mjs.map +1 -1
  301. package/es/components/table-v2/src/row.d.ts +18 -18
  302. package/es/components/table-v2/src/row2.mjs.map +1 -1
  303. package/es/components/table-v2/src/table-grid.d.ts +7 -1
  304. package/es/components/table-v2/src/table-grid.mjs +9 -2
  305. package/es/components/table-v2/src/table-grid.mjs.map +1 -1
  306. package/es/components/table-v2/src/table-v2.d.ts +36 -7
  307. package/es/components/table-v2/src/table-v2.mjs +15 -2
  308. package/es/components/table-v2/src/table-v2.mjs.map +1 -1
  309. package/es/components/table-v2/src/table.d.ts +9 -5
  310. package/es/components/table-v2/src/table2.mjs +6 -0
  311. package/es/components/table-v2/src/table2.mjs.map +1 -1
  312. package/es/components/table-v2/src/types.d.ts +6 -6
  313. package/es/components/table-v2/src/use-table.d.ts +3 -2
  314. package/es/components/table-v2/src/use-table2.mjs +2 -0
  315. package/es/components/table-v2/src/use-table2.mjs.map +1 -1
  316. package/es/components/tree-select/src/tree-select2.mjs +1 -1
  317. package/es/components/tree-select/src/tree-select2.mjs.map +1 -1
  318. package/es/components/tree-v2/index.d.ts +3 -3
  319. package/es/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  320. package/es/components/tree-v2/src/tree.vue.d.ts +3 -3
  321. package/es/components/tree-v2/src/virtual-tree.d.ts +1 -1
  322. package/es/components/tree-v2/src/virtual-tree2.mjs +2 -1
  323. package/es/components/tree-v2/src/virtual-tree2.mjs.map +1 -1
  324. package/es/components/virtual-list/src/hooks/use-grid-wheel2.mjs +4 -0
  325. package/es/components/virtual-list/src/hooks/use-grid-wheel2.mjs.map +1 -1
  326. package/es/index.mjs +4 -3
  327. package/es/index.mjs.map +1 -1
  328. package/es/version.d.ts +1 -1
  329. package/es/version2.mjs +1 -1
  330. package/es/version2.mjs.map +1 -1
  331. package/lib/component2.js +130 -129
  332. package/lib/component2.js.map +1 -1
  333. package/lib/components/calendar/index.js +1 -1
  334. package/lib/components/calendar/index2.js +2 -2
  335. package/lib/components/calendar/src/calendar.js +1 -1
  336. package/lib/components/calendar/src/calendar3.js +16 -241
  337. package/lib/components/calendar/src/calendar3.js.map +1 -1
  338. package/lib/components/calendar/src/calendar4.js +241 -16
  339. package/lib/components/calendar/src/calendar4.js.map +1 -1
  340. package/lib/components/calendar/src/date-table.js +1 -1
  341. package/lib/components/calendar/src/date-table3.js +35 -158
  342. package/lib/components/calendar/src/date-table3.js.map +1 -1
  343. package/lib/components/calendar/src/date-table4.js +158 -35
  344. package/lib/components/calendar/src/date-table4.js.map +1 -1
  345. package/lib/components/cascader/src/index2.js +1 -1
  346. package/lib/components/cascader/src/index2.js.map +1 -1
  347. package/lib/components/image/index.js +1 -1
  348. package/lib/components/image/index2.js +2 -2
  349. package/lib/components/image/src/image.js +1 -1
  350. package/lib/components/image/src/image3.js +53 -220
  351. package/lib/components/image/src/image3.js.map +1 -1
  352. package/lib/components/image/src/image4.js +220 -53
  353. package/lib/components/image/src/image4.js.map +1 -1
  354. package/lib/components/index.js +5 -2
  355. package/lib/components/index.js.map +1 -1
  356. package/lib/components/index2.js +1 -0
  357. package/lib/components/index2.js.map +1 -1
  358. package/lib/components/popconfirm/index.d.ts +1182 -5
  359. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +1182 -5
  360. package/lib/components/popconfirm/src/popconfirm4.js +80 -91
  361. package/lib/components/popconfirm/src/popconfirm4.js.map +1 -1
  362. package/lib/components/progress/src/progress4.js +4 -3
  363. package/lib/components/progress/src/progress4.js.map +1 -1
  364. package/lib/components/select-v2/src/useSelect2.js +1 -0
  365. package/lib/components/select-v2/src/useSelect2.js.map +1 -1
  366. package/lib/components/table-v2/index.d.ts +33 -6
  367. package/lib/components/table-v2/index.js +3 -0
  368. package/lib/components/table-v2/index.js.map +1 -1
  369. package/lib/components/table-v2/index2.js +5 -0
  370. package/lib/components/table-v2/index2.js.map +1 -1
  371. package/lib/components/table-v2/src/auto-resizer.d.ts +12 -0
  372. package/lib/components/table-v2/src/auto-resizer.js +10 -0
  373. package/lib/components/table-v2/src/auto-resizer.js.map +1 -0
  374. package/lib/components/table-v2/src/auto-resizer2.js +17 -0
  375. package/lib/components/table-v2/src/auto-resizer2.js.map +1 -0
  376. package/lib/components/table-v2/src/components/auto-resizer.d.ts +23 -0
  377. package/lib/components/table-v2/src/components/auto-resizer.js +43 -0
  378. package/lib/components/table-v2/src/components/auto-resizer.js.map +1 -0
  379. package/lib/components/table-v2/src/components/row.d.ts +9 -9
  380. package/lib/components/table-v2/src/components/row.js.map +1 -1
  381. package/lib/components/table-v2/src/composables/index.d.ts +1 -0
  382. package/lib/components/table-v2/src/composables/index.js +2 -0
  383. package/lib/components/table-v2/src/composables/index.js.map +1 -1
  384. package/lib/components/table-v2/src/composables/index2.js +2 -0
  385. package/lib/components/table-v2/src/composables/index2.js.map +1 -1
  386. package/lib/components/table-v2/src/composables/use-auto-resize.d.ts +7 -0
  387. package/lib/components/table-v2/src/composables/use-auto-resize.js +10 -0
  388. package/lib/components/table-v2/src/composables/use-auto-resize.js.map +1 -0
  389. package/lib/components/table-v2/src/composables/use-auto-resize2.js +43 -0
  390. package/lib/components/table-v2/src/composables/use-auto-resize2.js.map +1 -0
  391. package/lib/components/table-v2/src/composables/use-row.d.ts +2 -2
  392. package/lib/components/table-v2/src/composables/use-row2.js.map +1 -1
  393. package/lib/components/table-v2/src/composables/use-scrollbar.d.ts +3 -1
  394. package/lib/components/table-v2/src/composables/use-scrollbar2.js +5 -0
  395. package/lib/components/table-v2/src/composables/use-scrollbar2.js.map +1 -1
  396. package/lib/components/table-v2/src/renderers/cell.d.ts +1 -1
  397. package/lib/components/table-v2/src/renderers/cell.js +11 -2
  398. package/lib/components/table-v2/src/renderers/cell.js.map +1 -1
  399. package/lib/components/table-v2/src/row.d.ts +18 -18
  400. package/lib/components/table-v2/src/row2.js.map +1 -1
  401. package/lib/components/table-v2/src/table-grid.d.ts +7 -1
  402. package/lib/components/table-v2/src/table-grid.js +9 -2
  403. package/lib/components/table-v2/src/table-grid.js.map +1 -1
  404. package/lib/components/table-v2/src/table-v2.d.ts +36 -7
  405. package/lib/components/table-v2/src/table-v2.js +15 -2
  406. package/lib/components/table-v2/src/table-v2.js.map +1 -1
  407. package/lib/components/table-v2/src/table.d.ts +9 -5
  408. package/lib/components/table-v2/src/table2.js +6 -0
  409. package/lib/components/table-v2/src/table2.js.map +1 -1
  410. package/lib/components/table-v2/src/types.d.ts +6 -6
  411. package/lib/components/table-v2/src/use-table.d.ts +3 -2
  412. package/lib/components/table-v2/src/use-table2.js +2 -0
  413. package/lib/components/table-v2/src/use-table2.js.map +1 -1
  414. package/lib/components/tree-select/src/tree-select2.js +1 -1
  415. package/lib/components/tree-select/src/tree-select2.js.map +1 -1
  416. package/lib/components/tree-v2/index.d.ts +3 -3
  417. package/lib/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  418. package/lib/components/tree-v2/src/tree.vue.d.ts +3 -3
  419. package/lib/components/tree-v2/src/virtual-tree.d.ts +1 -1
  420. package/lib/components/tree-v2/src/virtual-tree2.js +2 -1
  421. package/lib/components/tree-v2/src/virtual-tree2.js.map +1 -1
  422. package/lib/components/virtual-list/src/hooks/use-grid-wheel2.js +4 -0
  423. package/lib/components/virtual-list/src/hooks/use-grid-wheel2.js.map +1 -1
  424. package/lib/index.js +5 -2
  425. package/lib/index.js.map +1 -1
  426. package/lib/version.d.ts +1 -1
  427. package/lib/version2.js +1 -1
  428. package/lib/version2.js.map +1 -1
  429. package/package.json +2 -2
  430. package/tags.json +1 -1
  431. package/theme-chalk/base.css +1 -1
  432. package/theme-chalk/el-avatar.css +1 -1
  433. package/theme-chalk/el-button.css +1 -1
  434. package/theme-chalk/el-date-picker.css +1 -1
  435. package/theme-chalk/el-form.css +1 -1
  436. package/theme-chalk/el-input.css +1 -1
  437. package/theme-chalk/el-table-v2.css +1 -1
  438. package/theme-chalk/el-time-picker.css +1 -1
  439. package/theme-chalk/el-time-select.css +1 -1
  440. package/theme-chalk/el-var.css +1 -1
  441. package/theme-chalk/index.css +1 -1
  442. package/theme-chalk/src/button.scss +2 -0
  443. package/theme-chalk/src/date-picker/picker-panel.scss +1 -1
  444. package/theme-chalk/src/form.scss +7 -5
  445. package/theme-chalk/src/input.scss +33 -13
  446. package/theme-chalk/src/mixins/_var.scss +5 -1
  447. package/theme-chalk/src/table-v2.scss +5 -0
  448. package/theme-chalk/src/var.scss +3 -0
  449. package/web-types.json +1 -1
  450. package/es/components/table-v2/src/column.d.ts +0 -19
  451. package/es/components/table-v2/src/column.mjs +0 -2
  452. package/es/components/table-v2/src/column.mjs.map +0 -1
  453. package/es/components/table-v2/src/column2.mjs +0 -41
  454. package/es/components/table-v2/src/column2.mjs.map +0 -1
  455. package/lib/components/table-v2/src/column.d.ts +0 -19
  456. package/lib/components/table-v2/src/column.js +0 -10
  457. package/lib/components/table-v2/src/column.js.map +0 -1
  458. package/lib/components/table-v2/src/column2.js +0 -45
  459. package/lib/components/table-v2/src/column2.js.map +0 -1
@@ -1,4 +1,5 @@
1
1
  import type { Ref } from 'vue';
2
+ import type { Alignment as ScrollStrategy } from 'element-plus/es/components/virtual-list';
2
3
  import type { TableV2Props } from '../table';
3
4
  import type { TableGridInstance } from '../table-grid';
4
5
  export declare type ScrollPos = {
@@ -12,6 +13,7 @@ declare type UseScrollBarProps = {
12
13
  rightTableRef: GridInstanceRef;
13
14
  onMaybeEndReached: () => void;
14
15
  };
16
+ export type { ScrollStrategy };
15
17
  export declare const useScrollbar: (props: TableV2Props, { mainTableRef, leftTableRef, rightTableRef, onMaybeEndReached, }: UseScrollBarProps) => {
16
18
  scrollPos: Ref<{
17
19
  scrollLeft: number;
@@ -20,7 +22,7 @@ export declare const useScrollbar: (props: TableV2Props, { mainTableRef, leftTab
20
22
  scrollTo: (params: ScrollPos) => void;
21
23
  scrollToLeft: (scrollLeft: number) => void;
22
24
  scrollToTop: (scrollTop: number) => void;
25
+ scrollToRow: (row: number, strategy?: ScrollStrategy) => void;
23
26
  onScroll: (params: ScrollPos) => void;
24
27
  onVerticalScroll: ({ scrollTop }: ScrollPos) => void;
25
28
  };
26
- export {};
@@ -41,6 +41,10 @@ const useScrollbar = (props, {
41
41
  if (scrollTop !== currentScrollTop)
42
42
  scrollToTop(scrollTop);
43
43
  }
44
+ function scrollToRow(row, strategy = "auto") {
45
+ var _a;
46
+ (_a = mainTableRef.value) == null ? void 0 : _a.scrollToRow(row, strategy);
47
+ }
44
48
  vue.watch(() => vue.unref(scrollPos).scrollTop, (cur, prev) => {
45
49
  if (cur > prev)
46
50
  onMaybeEndReached();
@@ -50,6 +54,7 @@ const useScrollbar = (props, {
50
54
  scrollTo,
51
55
  scrollToLeft,
52
56
  scrollToTop,
57
+ scrollToRow,
53
58
  onScroll,
54
59
  onVerticalScroll
55
60
  };
@@ -1 +1 @@
1
- {"version":3,"file":"use-scrollbar2.js","sources":["../../../../../../../packages/components/table-v2/src/composables/use-scrollbar.ts"],"sourcesContent":["import { ref, unref, watch } from 'vue'\n\nimport type { Ref } from 'vue'\nimport type { TableV2Props } from '../table'\nimport type { TableGridInstance } from '../table-grid'\n\nexport type ScrollPos = { scrollLeft: number; scrollTop: number }\ntype GridInstanceRef = Ref<TableGridInstance | undefined>\n\ntype UseScrollBarProps = {\n mainTableRef: GridInstanceRef\n leftTableRef: GridInstanceRef\n rightTableRef: GridInstanceRef\n\n onMaybeEndReached: () => void\n}\n\nexport const useScrollbar = (\n props: TableV2Props,\n {\n mainTableRef,\n leftTableRef,\n rightTableRef,\n onMaybeEndReached,\n }: UseScrollBarProps\n) => {\n const scrollPos = ref<ScrollPos>({ scrollLeft: 0, scrollTop: 0 })\n\n function doScroll(params: ScrollPos) {\n const { scrollTop } = params\n\n mainTableRef.value?.scrollTo(params)\n leftTableRef.value?.scrollToTop(scrollTop)\n rightTableRef.value?.scrollToTop(scrollTop)\n }\n\n // methods\n function scrollTo(params: ScrollPos) {\n scrollPos.value = params\n\n doScroll(params)\n }\n\n function scrollToTop(scrollTop: number) {\n scrollPos.value.scrollTop = scrollTop\n\n doScroll(unref(scrollPos))\n }\n\n function scrollToLeft(scrollLeft: number) {\n scrollPos.value.scrollLeft = scrollLeft\n\n mainTableRef.value?.scrollTo?.(unref(scrollPos))\n }\n\n function onScroll(params: ScrollPos) {\n scrollTo(params)\n props.onScroll?.(params)\n }\n\n function onVerticalScroll({ scrollTop }: ScrollPos) {\n const { scrollTop: currentScrollTop } = unref(scrollPos)\n if (scrollTop !== currentScrollTop) scrollToTop(scrollTop)\n }\n\n // When scrollTop changes, maybe reaching the bottom\n watch(\n () => unref(scrollPos).scrollTop,\n (cur, prev) => {\n if (cur > prev) onMaybeEndReached()\n }\n )\n\n return {\n scrollPos,\n\n scrollTo,\n scrollToLeft,\n scrollToTop,\n onScroll,\n onVerticalScroll,\n }\n}\n"],"names":["ref","unref","watch"],"mappings":";;;;;;AACY,MAAC,YAAY,GAAG,CAAC,KAAK,EAAE;AACpC,EAAE,YAAY;AACd,EAAE,YAAY;AACd,EAAE,aAAa;AACf,EAAE,iBAAiB;AACnB,CAAC,KAAK;AACN,EAAE,MAAM,SAAS,GAAGA,OAAG,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;AACzD,EAAE,SAAS,QAAQ,CAAC,MAAM,EAAE;AAC5B,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AACnB,IAAI,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;AACjC,IAAI,CAAC,EAAE,GAAG,YAAY,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACrE,IAAI,CAAC,EAAE,GAAG,YAAY,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AAC3E,IAAI,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AAC5E,GAAG;AACH,EAAE,SAAS,QAAQ,CAAC,MAAM,EAAE;AAC5B,IAAI,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC;AAC7B,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;AACrB,GAAG;AACH,EAAE,SAAS,WAAW,CAAC,SAAS,EAAE;AAClC,IAAI,SAAS,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;AAC1C,IAAI,QAAQ,CAACC,SAAK,CAAC,SAAS,CAAC,CAAC,CAAC;AAC/B,GAAG;AACH,EAAE,SAAS,YAAY,CAAC,UAAU,EAAE;AACpC,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,SAAS,CAAC,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;AAC5C,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,YAAY,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,EAAEA,SAAK,CAAC,SAAS,CAAC,CAAC,CAAC;AACrH,GAAG;AACH,EAAE,SAAS,QAAQ,CAAC,MAAM,EAAE;AAC5B,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;AACrB,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACpE,GAAG;AACH,EAAE,SAAS,gBAAgB,CAAC,EAAE,SAAS,EAAE,EAAE;AAC3C,IAAI,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAGA,SAAK,CAAC,SAAS,CAAC,CAAC;AAC7D,IAAI,IAAI,SAAS,KAAK,gBAAgB;AACtC,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC;AAC7B,GAAG;AACH,EAAEC,SAAK,CAAC,MAAMD,SAAK,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK;AACzD,IAAI,IAAI,GAAG,GAAG,IAAI;AAClB,MAAM,iBAAiB,EAAE,CAAC;AAC1B,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,SAAS;AACb,IAAI,QAAQ;AACZ,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,QAAQ;AACZ,IAAI,gBAAgB;AACpB,GAAG,CAAC;AACJ;;;;"}
1
+ {"version":3,"file":"use-scrollbar2.js","sources":["../../../../../../../packages/components/table-v2/src/composables/use-scrollbar.ts"],"sourcesContent":["import { ref, unref, watch } from 'vue'\n\nimport type { Ref } from 'vue'\nimport type { Alignment as ScrollStrategy } from '@element-plus/components/virtual-list'\nimport type { TableV2Props } from '../table'\nimport type { TableGridInstance } from '../table-grid'\n\nexport type ScrollPos = { scrollLeft: number; scrollTop: number }\ntype GridInstanceRef = Ref<TableGridInstance | undefined>\n\ntype UseScrollBarProps = {\n mainTableRef: GridInstanceRef\n leftTableRef: GridInstanceRef\n rightTableRef: GridInstanceRef\n\n onMaybeEndReached: () => void\n}\n\nexport type { ScrollStrategy }\n\nexport const useScrollbar = (\n props: TableV2Props,\n {\n mainTableRef,\n leftTableRef,\n rightTableRef,\n onMaybeEndReached,\n }: UseScrollBarProps\n) => {\n const scrollPos = ref<ScrollPos>({ scrollLeft: 0, scrollTop: 0 })\n\n function doScroll(params: ScrollPos) {\n const { scrollTop } = params\n\n mainTableRef.value?.scrollTo(params)\n leftTableRef.value?.scrollToTop(scrollTop)\n rightTableRef.value?.scrollToTop(scrollTop)\n }\n\n // methods\n function scrollTo(params: ScrollPos) {\n scrollPos.value = params\n\n doScroll(params)\n }\n\n function scrollToTop(scrollTop: number) {\n scrollPos.value.scrollTop = scrollTop\n\n doScroll(unref(scrollPos))\n }\n\n function scrollToLeft(scrollLeft: number) {\n scrollPos.value.scrollLeft = scrollLeft\n\n mainTableRef.value?.scrollTo?.(unref(scrollPos))\n }\n\n function onScroll(params: ScrollPos) {\n scrollTo(params)\n props.onScroll?.(params)\n }\n\n function onVerticalScroll({ scrollTop }: ScrollPos) {\n const { scrollTop: currentScrollTop } = unref(scrollPos)\n if (scrollTop !== currentScrollTop) scrollToTop(scrollTop)\n }\n\n function scrollToRow(row: number, strategy: ScrollStrategy = 'auto') {\n mainTableRef.value?.scrollToRow(row, strategy)\n }\n\n // When scrollTop changes, maybe reaching the bottom\n watch(\n () => unref(scrollPos).scrollTop,\n (cur, prev) => {\n if (cur > prev) onMaybeEndReached()\n }\n )\n\n return {\n scrollPos,\n\n scrollTo,\n scrollToLeft,\n scrollToTop,\n scrollToRow,\n onScroll,\n onVerticalScroll,\n }\n}\n"],"names":["ref","unref","watch"],"mappings":"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"}
@@ -3,7 +3,7 @@ import type { TableV2RowCellRenderParam } from '../components';
3
3
  import type { UseNamespaceReturn } from 'element-plus/es/hooks';
4
4
  import type { UseTableReturn } from '../use-table';
5
5
  import type { TableV2Props } from '../table';
6
- declare type CellRendererProps = TableV2RowCellRenderParam & Pick<TableV2Props, 'expandColumnKey' | 'indentSize' | 'iconSize' | 'rowKey'> & UnwrapNestedRefs<Pick<UseTableReturn, 'expandedRowKeys'>> & {
6
+ declare type CellRendererProps = TableV2RowCellRenderParam & Pick<TableV2Props, 'cellProps' | 'expandColumnKey' | 'indentSize' | 'iconSize' | 'rowKey'> & UnwrapNestedRefs<Pick<UseTableReturn, 'expandedRowKeys'>> & {
7
7
  ns: UseNamespaceReturn;
8
8
  };
9
9
  declare const CellRenderer: FunctionalComponent<CellRendererProps>;
@@ -25,6 +25,7 @@ const CellRenderer = ({
25
25
  style,
26
26
  expandedRowKeys,
27
27
  ns,
28
+ cellProps: _cellProps,
28
29
  expandColumnKey,
29
30
  indentSize,
30
31
  iconSize,
@@ -53,6 +54,14 @@ const CellRenderer = ({
53
54
  rowData,
54
55
  rowIndex
55
56
  }) : lodashUnified.get(rowData, dataKey != null ? dataKey : "");
57
+ const extraCellProps = utils.tryCall(_cellProps, {
58
+ cellData,
59
+ columns,
60
+ column,
61
+ columnIndex,
62
+ rowIndex,
63
+ rowData
64
+ });
56
65
  const cellProps = {
57
66
  class: ns.e("cell-text"),
58
67
  columns,
@@ -84,10 +93,10 @@ const CellRenderer = ({
84
93
  }, null);
85
94
  }
86
95
  }
87
- return vue.createVNode("div", {
96
+ return vue.createVNode("div", vue.mergeProps({
88
97
  "class": kls,
89
98
  "style": cellStyle
90
- }, [IconOrPlaceholder, Cell]);
99
+ }, extraCellProps), [IconOrPlaceholder, Cell]);
91
100
  };
92
101
  CellRenderer.inheritAttrs = false;
93
102
 
@@ -1 +1 @@
1
- {"version":3,"file":"cell.js","sources":["../../../../../../../packages/components/table-v2/src/renderers/cell.tsx"],"sourcesContent":["import { get } from 'lodash-unified'\nimport { isFunction, isObject } from '@element-plus/utils'\nimport { ExpandIcon, TableCell } from '../components'\nimport { Alignment } from '../constants'\nimport { placeholderSign } from '../private'\nimport { componentToSlot, enforceUnit } from '../utils'\n\nimport type { FunctionalComponent, UnwrapNestedRefs, VNode } from 'vue'\nimport type { CellRendererParams } from '../types'\nimport type { TableV2RowCellRenderParam } from '../components'\nimport type { UseNamespaceReturn } from '@element-plus/hooks'\nimport type { UseTableReturn } from '../use-table'\nimport type { TableV2Props } from '../table'\n\ntype CellRendererProps = TableV2RowCellRenderParam &\n Pick<TableV2Props, 'expandColumnKey' | 'indentSize' | 'iconSize' | 'rowKey'> &\n UnwrapNestedRefs<Pick<UseTableReturn, 'expandedRowKeys'>> & {\n ns: UseNamespaceReturn\n }\n\nconst CellRenderer: FunctionalComponent<CellRendererProps> = (\n {\n // renderer props\n columns,\n column,\n columnIndex,\n depth,\n expandIconProps,\n isScrolling,\n rowData,\n rowIndex,\n // from use-table\n style,\n expandedRowKeys,\n ns,\n // derived props\n expandColumnKey,\n indentSize,\n iconSize,\n rowKey,\n },\n { slots }\n) => {\n const cellStyle = enforceUnit(style)\n\n if (column.placeholderSign === placeholderSign) {\n return <div class={ns.em('row-cell', 'placeholder')} style={cellStyle} />\n }\n const { cellRenderer, dataKey, dataGetter } = column\n\n const columnCellRenderer = componentToSlot(cellRenderer)\n\n const CellComponent =\n columnCellRenderer ||\n slots.default ||\n ((props: CellRendererParams<any>) => <TableCell {...props} />)\n\n const cellData = isFunction(dataGetter)\n ? dataGetter({ columns, column, columnIndex, rowData, rowIndex })\n : get(rowData, dataKey ?? '')\n\n const cellProps = {\n class: ns.e('cell-text'),\n columns,\n column,\n columnIndex,\n cellData,\n isScrolling,\n rowData,\n rowIndex,\n }\n\n const Cell = CellComponent(cellProps)\n\n const kls = [\n ns.e('row-cell'),\n column.align === Alignment.CENTER && ns.is('align-center'),\n column.align === Alignment.RIGHT && ns.is('align-right'),\n ]\n\n const expandable = rowIndex >= 0 && column.key === expandColumnKey\n const expanded = rowIndex >= 0 && expandedRowKeys.includes(rowData[rowKey])\n\n let IconOrPlaceholder: VNode | undefined\n const iconStyle = `margin-inline-start: ${depth * indentSize}px;`\n if (expandable) {\n if (isObject(expandIconProps)) {\n IconOrPlaceholder = (\n <ExpandIcon\n {...expandIconProps}\n class={[ns.e('expand-icon'), ns.is('expanded', expanded)]}\n size={iconSize}\n expanded={expanded}\n style={iconStyle}\n expandable\n />\n )\n } else {\n IconOrPlaceholder = (\n <div\n style={[\n iconStyle,\n `width: ${iconSize}px; height: ${iconSize}px;`,\n ].join(' ')}\n />\n )\n }\n }\n\n return (\n <div class={kls} style={cellStyle}>\n {IconOrPlaceholder}\n {Cell}\n </div>\n )\n}\n\nCellRenderer.inheritAttrs = false\n\nexport default CellRenderer\n"],"names":["CellRenderer","columns","column","columnIndex","depth","expandIconProps","isScrolling","rowData","rowIndex","style","expandedRowKeys","ns","expandColumnKey","indentSize","iconSize","rowKey","placeholderSign","slots","cellStyle","_createVNode","TableCell","cellRenderer","isFunction","dataKey","dataGetter","get","default","cellData","class","Alignment","isObject","ExpandIcon","_mergeProps","kls","e","align","expandable","expanded","iconStyle","IconOrPlaceholder"],"mappings":"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"}
1
+ {"version":3,"file":"cell.js","sources":["../../../../../../../packages/components/table-v2/src/renderers/cell.tsx"],"sourcesContent":["import { get } from 'lodash-unified'\nimport { isFunction, isObject } from '@element-plus/utils'\nimport { ExpandIcon, TableCell } from '../components'\nimport { Alignment } from '../constants'\nimport { placeholderSign } from '../private'\nimport { componentToSlot, enforceUnit, tryCall } from '../utils'\n\nimport type { FunctionalComponent, UnwrapNestedRefs, VNode } from 'vue'\nimport type { CellRendererParams } from '../types'\nimport type { TableV2RowCellRenderParam } from '../components'\nimport type { UseNamespaceReturn } from '@element-plus/hooks'\nimport type { UseTableReturn } from '../use-table'\nimport type { TableV2Props } from '../table'\n\ntype CellRendererProps = TableV2RowCellRenderParam &\n Pick<\n TableV2Props,\n 'cellProps' | 'expandColumnKey' | 'indentSize' | 'iconSize' | 'rowKey'\n > &\n UnwrapNestedRefs<Pick<UseTableReturn, 'expandedRowKeys'>> & {\n ns: UseNamespaceReturn\n }\n\nconst CellRenderer: FunctionalComponent<CellRendererProps> = (\n {\n // renderer props\n columns,\n column,\n columnIndex,\n depth,\n expandIconProps,\n isScrolling,\n rowData,\n rowIndex,\n // from use-table\n style,\n expandedRowKeys,\n ns,\n // derived props\n cellProps: _cellProps,\n expandColumnKey,\n indentSize,\n iconSize,\n rowKey,\n },\n { slots }\n) => {\n const cellStyle = enforceUnit(style)\n\n if (column.placeholderSign === placeholderSign) {\n return <div class={ns.em('row-cell', 'placeholder')} style={cellStyle} />\n }\n const { cellRenderer, dataKey, dataGetter } = column\n\n const columnCellRenderer = componentToSlot(cellRenderer)\n\n const CellComponent =\n columnCellRenderer ||\n slots.default ||\n ((props: CellRendererParams<any>) => <TableCell {...props} />)\n\n const cellData = isFunction(dataGetter)\n ? dataGetter({ columns, column, columnIndex, rowData, rowIndex })\n : get(rowData, dataKey ?? '')\n\n const extraCellProps = tryCall(_cellProps, {\n cellData,\n columns,\n column,\n columnIndex,\n rowIndex,\n rowData,\n })\n\n const cellProps = {\n class: ns.e('cell-text'),\n columns,\n column,\n columnIndex,\n cellData,\n isScrolling,\n rowData,\n rowIndex,\n }\n\n const Cell = CellComponent(cellProps)\n\n const kls = [\n ns.e('row-cell'),\n column.align === Alignment.CENTER && ns.is('align-center'),\n column.align === Alignment.RIGHT && ns.is('align-right'),\n ]\n\n const expandable = rowIndex >= 0 && column.key === expandColumnKey\n const expanded = rowIndex >= 0 && expandedRowKeys.includes(rowData[rowKey])\n\n let IconOrPlaceholder: VNode | undefined\n const iconStyle = `margin-inline-start: ${depth * indentSize}px;`\n if (expandable) {\n if (isObject(expandIconProps)) {\n IconOrPlaceholder = (\n <ExpandIcon\n {...expandIconProps}\n class={[ns.e('expand-icon'), ns.is('expanded', expanded)]}\n size={iconSize}\n expanded={expanded}\n style={iconStyle}\n expandable\n />\n )\n } else {\n IconOrPlaceholder = (\n <div\n style={[\n iconStyle,\n `width: ${iconSize}px; height: ${iconSize}px;`,\n ].join(' ')}\n />\n )\n }\n }\n\n return (\n <div class={kls} style={cellStyle} {...extraCellProps}>\n {IconOrPlaceholder}\n {Cell}\n </div>\n )\n}\n\nCellRenderer.inheritAttrs = false\n\nexport default CellRenderer\n"],"names":["CellRenderer","columns","column","columnIndex","depth","expandIconProps","isScrolling","rowData","rowIndex","style","expandedRowKeys","ns","cellProps","expandColumnKey","indentSize","iconSize","rowKey","placeholderSign","slots","cellStyle","_createVNode","TableCell","cellRenderer","isFunction","dataKey","dataGetter","get","default","cellData","extraCellProps","class","Alignment","isObject","ExpandIcon","_mergeProps","kls","e","align","expandable","expanded","iconStyle","IconOrPlaceholder"],"mappings":"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"}
@@ -1,33 +1,33 @@
1
1
  import type { CSSProperties, ExtractPropTypes } from 'vue';
2
2
  import type { FixedDirection, KeyType, RowCommonParams } from './types';
3
- export declare type RowExpandParams<T> = {
3
+ export declare type RowExpandParams = {
4
4
  expanded: boolean;
5
5
  rowKey: KeyType;
6
- } & RowCommonParams<T>;
7
- export declare type RowHoverParams<T> = {
6
+ } & RowCommonParams;
7
+ export declare type RowHoverParams = {
8
8
  event: MouseEvent;
9
9
  hovered: boolean;
10
10
  rowKey: KeyType;
11
- } & RowCommonParams<T>;
12
- export declare type RowEventHandlerParams<T> = {
11
+ } & RowCommonParams;
12
+ export declare type RowEventHandlerParams = {
13
13
  rowKey: KeyType;
14
14
  event: Event;
15
- } & RowCommonParams<T>;
15
+ } & RowCommonParams;
16
16
  export declare type RowHeightChangedParams = {
17
17
  rowKey: KeyType;
18
18
  height: number;
19
19
  rowIndex: number;
20
20
  };
21
- export declare type RowExpandHandler<T> = (params: RowExpandParams<T>) => void;
22
- export declare type RowHoverHandler<T> = (params: RowHoverParams<T>) => void;
23
- export declare type RowEventHandler<T> = (params: RowEventHandlerParams<T>) => void;
21
+ export declare type RowExpandHandler = (params: RowExpandParams) => void;
22
+ export declare type RowHoverHandler = (params: RowHoverParams) => void;
23
+ export declare type RowEventHandler = (params: RowEventHandlerParams) => void;
24
24
  export declare type RowHeightChangeHandler = (row: RowHeightChangedParams, fixedDirection: boolean | FixedDirection | undefined) => void;
25
- export declare type RowEventHandlers<T> = {
26
- onClick?: RowEventHandler<T>;
27
- onContextmenu?: RowEventHandler<T>;
28
- onDblclick?: RowEventHandler<T>;
29
- onMouseenter?: RowEventHandler<T>;
30
- onMouseleave?: RowEventHandler<T>;
25
+ export declare type RowEventHandlers = {
26
+ onClick?: RowEventHandler;
27
+ onContextmenu?: RowEventHandler;
28
+ onDblclick?: RowEventHandler;
29
+ onMouseenter?: RowEventHandler;
30
+ onMouseleave?: RowEventHandler;
31
31
  };
32
32
  export declare const tableV2RowProps: {
33
33
  readonly class: StringConstructor;
@@ -43,11 +43,11 @@ export declare const tableV2RowProps: {
43
43
  readonly __elPropsReservedKey: true;
44
44
  };
45
45
  readonly isScrolling: BooleanConstructor;
46
- readonly onRowExpand: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<RowExpandHandler<any>>, unknown, unknown, unknown, unknown>;
47
- readonly onRowHover: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<RowHoverHandler<any>>, unknown, unknown, unknown, unknown>;
46
+ readonly onRowExpand: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<RowExpandHandler>, unknown, unknown, unknown, unknown>;
47
+ readonly onRowHover: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<RowHoverHandler>, unknown, unknown, unknown, unknown>;
48
48
  readonly onRowHeightChange: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<RowHeightChangeHandler>, unknown, unknown, unknown, unknown>;
49
49
  readonly rowData: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<any>, unknown, true, unknown, unknown>;
50
- readonly rowEventHandlers: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<RowEventHandlers<any>>, unknown, unknown, unknown, unknown>;
50
+ readonly rowEventHandlers: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<RowEventHandlers>, unknown, unknown, unknown, unknown>;
51
51
  readonly rowIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, true, unknown, unknown>;
52
52
  readonly rowKey: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<KeyType>, "id", unknown, unknown, unknown>;
53
53
  readonly style: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<CSSProperties>, unknown, unknown, unknown, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"row2.js","sources":["../../../../../../packages/components/table-v2/src/row.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\nimport { virtualizedGridProps } from '@element-plus/components/virtual-list'\nimport { columns, expandColumnKey, rowKey } from './common'\n\nimport type { CSSProperties, ExtractPropTypes } from 'vue'\nimport type { FixedDirection, KeyType, RowCommonParams } from './types'\n\nexport type RowExpandParams<T> = {\n expanded: boolean\n rowKey: KeyType\n} & RowCommonParams<T>\n\nexport type RowHoverParams<T> = {\n event: MouseEvent\n hovered: boolean\n rowKey: KeyType\n} & RowCommonParams<T>\n\nexport type RowEventHandlerParams<T> = {\n rowKey: KeyType\n event: Event\n} & RowCommonParams<T>\n\nexport type RowHeightChangedParams = {\n rowKey: KeyType\n height: number\n rowIndex: number\n}\n\nexport type RowExpandHandler<T> = (params: RowExpandParams<T>) => void\nexport type RowHoverHandler<T> = (params: RowHoverParams<T>) => void\nexport type RowEventHandler<T> = (params: RowEventHandlerParams<T>) => void\nexport type RowHeightChangeHandler = (\n row: RowHeightChangedParams,\n fixedDirection: boolean | FixedDirection | undefined\n) => void\n\nexport type RowEventHandlers<T> = {\n onClick?: RowEventHandler<T>\n onContextmenu?: RowEventHandler<T>\n onDblclick?: RowEventHandler<T>\n onMouseenter?: RowEventHandler<T>\n onMouseleave?: RowEventHandler<T>\n}\n\nexport const tableV2RowProps = buildProps({\n class: String,\n columns,\n columnsStyles: {\n type: definePropType<Record<KeyType, CSSProperties>>(Object),\n required: true,\n },\n depth: Number,\n expandColumnKey,\n estimatedRowHeight: {\n ...virtualizedGridProps.estimatedRowHeight,\n default: undefined,\n },\n isScrolling: Boolean,\n onRowExpand: {\n type: definePropType<RowExpandHandler<any>>(Function),\n },\n onRowHover: {\n type: definePropType<RowHoverHandler<any>>(Function),\n },\n onRowHeightChange: {\n type: definePropType<RowHeightChangeHandler>(Function),\n },\n rowData: {\n type: definePropType<any>(Object),\n required: true,\n },\n rowEventHandlers: {\n type: definePropType<RowEventHandlers<any>>(Object),\n },\n rowIndex: {\n type: Number,\n required: true,\n },\n /**\n * Unique item key\n */\n rowKey,\n style: {\n type: definePropType<CSSProperties>(Object),\n },\n} as const)\n\nexport type TableV2RowProps = ExtractPropTypes<typeof tableV2RowProps>\n"],"names":["buildProps","columns","definePropType","expandColumnKey","virtualizedGridProps","rowKey"],"mappings":";;;;;;;;;;AAGY,MAAC,eAAe,GAAGA,gBAAU,CAAC;AAC1C,EAAE,KAAK,EAAE,MAAM;AACf,WAAEC,cAAO;AACT,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAEC,oBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,EAAE,KAAK,EAAE,MAAM;AACf,mBAAEC,sBAAe;AACjB,EAAE,kBAAkB,EAAE;AACtB,IAAI,GAAGC,4BAAoB,CAAC,kBAAkB;AAC9C,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,WAAW,EAAE,OAAO;AACtB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEF,oBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEA,oBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAEA,oBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEA,oBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAEA,oBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,UAAEG,aAAM;AACR,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEH,oBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"row2.js","sources":["../../../../../../packages/components/table-v2/src/row.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\nimport { virtualizedGridProps } from '@element-plus/components/virtual-list'\nimport { columns, expandColumnKey, rowKey } from './common'\n\nimport type { CSSProperties, ExtractPropTypes } from 'vue'\nimport type { FixedDirection, KeyType, RowCommonParams } from './types'\n\nexport type RowExpandParams = {\n expanded: boolean\n rowKey: KeyType\n} & RowCommonParams\n\nexport type RowHoverParams = {\n event: MouseEvent\n hovered: boolean\n rowKey: KeyType\n} & RowCommonParams\n\nexport type RowEventHandlerParams = {\n rowKey: KeyType\n event: Event\n} & RowCommonParams\n\nexport type RowHeightChangedParams = {\n rowKey: KeyType\n height: number\n rowIndex: number\n}\n\nexport type RowExpandHandler = (params: RowExpandParams) => void\nexport type RowHoverHandler = (params: RowHoverParams) => void\nexport type RowEventHandler = (params: RowEventHandlerParams) => void\nexport type RowHeightChangeHandler = (\n row: RowHeightChangedParams,\n fixedDirection: boolean | FixedDirection | undefined\n) => void\n\nexport type RowEventHandlers = {\n onClick?: RowEventHandler\n onContextmenu?: RowEventHandler\n onDblclick?: RowEventHandler\n onMouseenter?: RowEventHandler\n onMouseleave?: RowEventHandler\n}\n\nexport const tableV2RowProps = buildProps({\n class: String,\n columns,\n columnsStyles: {\n type: definePropType<Record<KeyType, CSSProperties>>(Object),\n required: true,\n },\n depth: Number,\n expandColumnKey,\n estimatedRowHeight: {\n ...virtualizedGridProps.estimatedRowHeight,\n default: undefined,\n },\n isScrolling: Boolean,\n onRowExpand: {\n type: definePropType<RowExpandHandler>(Function),\n },\n onRowHover: {\n type: definePropType<RowHoverHandler>(Function),\n },\n onRowHeightChange: {\n type: definePropType<RowHeightChangeHandler>(Function),\n },\n rowData: {\n type: definePropType<any>(Object),\n required: true,\n },\n rowEventHandlers: {\n type: definePropType<RowEventHandlers>(Object),\n },\n rowIndex: {\n type: Number,\n required: true,\n },\n /**\n * Unique item key\n */\n rowKey,\n style: {\n type: definePropType<CSSProperties>(Object),\n },\n} as const)\n\nexport type TableV2RowProps = ExtractPropTypes<typeof tableV2RowProps>\n"],"names":["buildProps","columns","definePropType","expandColumnKey","virtualizedGridProps","rowKey"],"mappings":";;;;;;;;;;AAGY,MAAC,eAAe,GAAGA,gBAAU,CAAC;AAC1C,EAAE,KAAK,EAAE,MAAM;AACf,WAAEC,cAAO;AACT,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAEC,oBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,EAAE,KAAK,EAAE,MAAM;AACf,mBAAEC,sBAAe;AACjB,EAAE,kBAAkB,EAAE;AACtB,IAAI,GAAGC,4BAAoB,CAAC,kBAAkB;AAC9C,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,WAAW,EAAE,OAAO;AACtB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEF,oBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEA,oBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAEA,oBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEA,oBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAEA,oBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,UAAEG,aAAM;AACR,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEH,oBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,CAAC;;;;"}
@@ -1,5 +1,5 @@
1
1
  import type { UnwrapRef } from 'vue';
2
- import type { GridDefaultSlotParams, GridScrollOptions, ResetAfterIndex } from 'element-plus/es/components/virtual-list';
2
+ import type { GridDefaultSlotParams, GridScrollOptions, ResetAfterIndex, Alignment as ScrollStrategy } from 'element-plus/es/components/virtual-list';
3
3
  import type { TableV2GridProps } from './grid';
4
4
  declare const TableGrid: import("vue").DefineComponent<{
5
5
  readonly columns: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./common").AnyColumn[]>, unknown, true, unknown, unknown>;
@@ -95,6 +95,12 @@ export declare type TableGridInstance = InstanceType<typeof TableGrid> & UnwrapR
95
95
  * @description scroll vertically to position y
96
96
  */
97
97
  scrollToTop(scrollTop: number): void;
98
+ /**
99
+ * @description scroll to a given row
100
+ * @params row {Number} which row to scroll to
101
+ * @params @optional strategy {ScrollStrategy} use what strategy to scroll to
102
+ */
103
+ scrollToRow(row: number, strategy: ScrollStrategy): void;
98
104
  /**
99
105
  * @description reset rendered state after row index
100
106
  * @param { number } rowIndex
@@ -91,6 +91,10 @@ const useTableGrid = (props) => {
91
91
  scrollTop
92
92
  });
93
93
  }
94
+ function scrollToRow(row, strategy) {
95
+ var _a;
96
+ (_a = vue.unref(bodyRef)) == null ? void 0 : _a.scrollToItem(row, 1, strategy);
97
+ }
94
98
  function forceUpdate() {
95
99
  var _a, _b;
96
100
  (_a = vue.unref(bodyRef)) == null ? void 0 : _a.$forceUpdate();
@@ -109,7 +113,8 @@ const useTableGrid = (props) => {
109
113
  onItemRendered,
110
114
  resetAfterRowIndex,
111
115
  scrollTo,
112
- scrollToTop
116
+ scrollToTop,
117
+ scrollToRow
113
118
  };
114
119
  };
115
120
  const TableGrid = vue.defineComponent({
@@ -135,13 +140,15 @@ const TableGrid = vue.defineComponent({
135
140
  onItemRendered,
136
141
  resetAfterRowIndex,
137
142
  scrollTo,
138
- scrollToTop
143
+ scrollToTop,
144
+ scrollToRow
139
145
  } = useTableGrid(props);
140
146
  expose({
141
147
  forceUpdate,
142
148
  totalHeight,
143
149
  scrollTo,
144
150
  scrollToTop,
151
+ scrollToRow,
145
152
  resetAfterRowIndex
146
153
  });
147
154
  const getColumnWidth = () => props.bodyWidth;
@@ -1 +1 @@
1
- {"version":3,"file":"table-grid.js","sources":["../../../../../../packages/components/table-v2/src/table-grid.tsx"],"sourcesContent":["import { computed, defineComponent, inject, ref, unref } from 'vue'\nimport {\n DynamicSizeGrid,\n FixedSizeGrid,\n} from '@element-plus/components/virtual-list'\nimport { isNumber, isObject } from '@element-plus/utils'\nimport { Header } from './components'\nimport { TableV2InjectionKey } from './tokens'\nimport { tableV2GridProps } from './grid'\nimport { sum } from './utils'\n\nimport type { UnwrapRef } from 'vue'\nimport type {\n DynamicSizeGridInstance,\n GridDefaultSlotParams,\n GridItemKeyGetter,\n GridItemRenderedEvtParams,\n GridScrollOptions,\n ResetAfterIndex,\n} from '@element-plus/components/virtual-list'\nimport type { TableV2HeaderInstance } from './components'\nimport type { TableV2GridProps } from './grid'\n\nconst COMPONENT_NAME = 'ElTableV2Grid'\n\nconst useTableGrid = (props: TableV2GridProps) => {\n const headerRef = ref<TableV2HeaderInstance>()\n const bodyRef = ref<DynamicSizeGridInstance>()\n\n const totalHeight = computed(() => {\n const { data, rowHeight, estimatedRowHeight } = props\n\n if (estimatedRowHeight) {\n return\n }\n\n return data.length * (rowHeight as number)\n })\n\n const fixedRowHeight = computed(() => {\n const { fixedData, rowHeight } = props\n\n return (fixedData?.length || 0) * (rowHeight as number)\n })\n\n const headerHeight = computed(() => sum(props.headerHeight))\n\n const gridHeight = computed(() => {\n const { height } = props\n return Math.max(0, height - unref(headerHeight) - unref(fixedRowHeight))\n })\n\n const hasHeader = computed(() => {\n return unref(headerHeight) + unref(fixedRowHeight) > 0\n })\n\n const itemKey: GridItemKeyGetter = ({ data, rowIndex }) =>\n data[rowIndex][props.rowKey]\n\n function onItemRendered({\n rowCacheStart,\n rowCacheEnd,\n rowVisibleStart,\n rowVisibleEnd,\n }: GridItemRenderedEvtParams) {\n props.onRowsRendered?.({\n rowCacheStart,\n rowCacheEnd,\n rowVisibleStart,\n rowVisibleEnd,\n })\n }\n\n function resetAfterRowIndex(index: number, forceUpdate: boolean) {\n bodyRef.value?.resetAfterRowIndex(index, forceUpdate)\n }\n\n function scrollTo(x: number, y: number): void\n function scrollTo(options: GridScrollOptions): void\n function scrollTo(leftOrOptions: number | GridScrollOptions, top?: number) {\n const header$ = unref(headerRef)\n const body$ = unref(bodyRef)\n\n if (!header$ || !body$) return\n\n if (isObject(leftOrOptions)) {\n header$.scrollToLeft(leftOrOptions.scrollLeft)\n body$.scrollTo(leftOrOptions)\n } else {\n header$.scrollToLeft(leftOrOptions)\n body$.scrollTo({\n scrollLeft: leftOrOptions,\n scrollTop: top,\n })\n }\n }\n\n function scrollToTop(scrollTop: number) {\n unref(bodyRef)?.scrollTo({\n scrollTop,\n })\n }\n\n function forceUpdate() {\n unref(bodyRef)?.$forceUpdate()\n unref(headerRef)?.$forceUpdate()\n }\n\n return {\n bodyRef,\n forceUpdate,\n fixedRowHeight,\n gridHeight,\n hasHeader,\n headerHeight,\n headerRef,\n totalHeight,\n\n itemKey,\n onItemRendered,\n resetAfterRowIndex,\n scrollTo,\n scrollToTop,\n }\n}\n\nconst TableGrid = defineComponent({\n name: COMPONENT_NAME,\n props: tableV2GridProps,\n setup(props, { slots, expose }) {\n const { ns } = inject(TableV2InjectionKey)!\n\n const {\n bodyRef,\n fixedRowHeight,\n gridHeight,\n hasHeader,\n headerRef,\n headerHeight,\n totalHeight,\n\n forceUpdate,\n itemKey,\n onItemRendered,\n resetAfterRowIndex,\n scrollTo,\n scrollToTop,\n } = useTableGrid(props)\n\n expose({\n forceUpdate,\n /**\n * @description fetch total height\n */\n totalHeight,\n /**\n * @description scroll to a position\n */\n scrollTo,\n /**\n * @description scroll vertically to position y\n */\n scrollToTop,\n /**\n * @description reset rendered state after row index\n */\n resetAfterRowIndex,\n })\n\n const getColumnWidth = () => props.bodyWidth\n\n return () => {\n const {\n cache,\n columns,\n data,\n fixedData,\n useIsScrolling,\n scrollbarAlwaysOn,\n scrollbarEndGap,\n scrollbarStartGap,\n style,\n rowHeight,\n bodyWidth,\n estimatedRowHeight,\n headerWidth,\n height,\n width,\n\n getRowHeight,\n onScroll,\n } = props\n\n const isDynamicRowEnabled = isNumber(estimatedRowHeight)\n const Grid = isDynamicRowEnabled ? DynamicSizeGrid : FixedSizeGrid\n const _headerHeight = unref(headerHeight)\n\n return (\n <div role=\"table\" class={[ns.e('table'), props.class]} style={style}>\n <Grid\n ref={bodyRef}\n // special attrs\n data={data}\n useIsScrolling={useIsScrolling}\n itemKey={itemKey}\n // column attrs\n columnCache={0}\n columnWidth={isDynamicRowEnabled ? getColumnWidth : bodyWidth}\n totalColumn={1}\n // row attrs\n totalRow={data.length}\n rowCache={cache}\n rowHeight={isDynamicRowEnabled ? getRowHeight : rowHeight}\n // DOM attrs\n width={width}\n height={unref(gridHeight)}\n class={ns.e('body')}\n scrollbarStartGap={scrollbarStartGap}\n scrollbarEndGap={scrollbarEndGap}\n scrollbarAlwaysOn={scrollbarAlwaysOn}\n // handlers\n onScroll={onScroll}\n onItemRendered={onItemRendered}\n perfMode={false}\n >\n {{\n default: (params: GridDefaultSlotParams) => {\n const rowData = data[params.rowIndex]\n return slots.row?.({\n ...params,\n columns,\n rowData,\n })\n },\n }}\n </Grid>\n {unref(hasHeader) && (\n <Header\n ref={headerRef}\n class={ns.e('header-wrapper')}\n columns={columns}\n headerData={data}\n headerHeight={props.headerHeight}\n fixedHeaderData={fixedData}\n rowWidth={headerWidth}\n rowHeight={rowHeight}\n width={width}\n height={Math.min(_headerHeight + unref(fixedRowHeight), height)}\n >\n {{\n dynamic: slots.header,\n fixed: slots.row,\n }}\n </Header>\n )}\n </div>\n )\n }\n },\n})\n\nexport default TableGrid\n\nexport type TableGridRowSlotParams = {\n columns: TableV2GridProps['columns']\n rowData: any\n} & GridDefaultSlotParams\n\nexport type TableGridInstance = InstanceType<typeof TableGrid> &\n UnwrapRef<{\n forceUpdate: () => void\n /**\n * @description fetch total height\n */\n totalHeight: number\n\n /**\n * @description scrollTo a position\n * @param { number | ScrollToOptions } arg1\n * @param { number } arg2\n */\n scrollTo(leftOrOptions: number | GridScrollOptions, top?: number): void\n\n /**\n * @description scroll vertically to position y\n */\n scrollToTop(scrollTop: number): void\n /**\n * @description reset rendered state after row index\n * @param { number } rowIndex\n * @param { boolean } forceUpdate\n */\n resetAfterRowIndex: ResetAfterIndex\n }>\n"],"names":["COMPONENT_NAME","useTableGrid","props","headerRef","ref","bodyRef","computed","data","rowHeight","estimatedRowHeight","fixedData","sum","headerHeight","gridHeight","unref","height","Math","max","hasHeader","itemKey","rowIndex","rowCacheStart","rowCacheEnd","rowVisibleStart","rowVisibleEnd","onRowsRendered","forceUpdate","isObject","header$","scrollToLeft","leftOrOptions","body$","scrollLeft","scrollTop","scrollToTop","fixedRowHeight","totalHeight","defineComponent","resetAfterRowIndex","scrollTo","tableV2GridProps","TableGrid","name","TableV2InjectionKey","setup","slots","expose","ns","inject","onItemRendered","isNumber","_createVNode","cache","columns","useIsScrolling","scrollbarAlwaysOn","scrollbarEndGap","scrollbarStartGap","style","bodyWidth","headerWidth","width","getRowHeight","onScroll","Header","length","isDynamicRowEnabled"],"mappings":"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"}
1
+ {"version":3,"file":"table-grid.js","sources":["../../../../../../packages/components/table-v2/src/table-grid.tsx"],"sourcesContent":["import { computed, defineComponent, inject, ref, unref } from 'vue'\nimport {\n DynamicSizeGrid,\n FixedSizeGrid,\n} from '@element-plus/components/virtual-list'\nimport { isNumber, isObject } from '@element-plus/utils'\nimport { Header } from './components'\nimport { TableV2InjectionKey } from './tokens'\nimport { tableV2GridProps } from './grid'\nimport { sum } from './utils'\n\nimport type { UnwrapRef } from 'vue'\nimport type {\n DynamicSizeGridInstance,\n GridDefaultSlotParams,\n GridItemKeyGetter,\n GridItemRenderedEvtParams,\n GridScrollOptions,\n ResetAfterIndex,\n Alignment as ScrollStrategy,\n} from '@element-plus/components/virtual-list'\nimport type { TableV2HeaderInstance } from './components'\nimport type { TableV2GridProps } from './grid'\n\nconst COMPONENT_NAME = 'ElTableV2Grid'\n\nconst useTableGrid = (props: TableV2GridProps) => {\n const headerRef = ref<TableV2HeaderInstance>()\n const bodyRef = ref<DynamicSizeGridInstance>()\n\n const totalHeight = computed(() => {\n const { data, rowHeight, estimatedRowHeight } = props\n\n if (estimatedRowHeight) {\n return\n }\n\n return data.length * (rowHeight as number)\n })\n\n const fixedRowHeight = computed(() => {\n const { fixedData, rowHeight } = props\n\n return (fixedData?.length || 0) * (rowHeight as number)\n })\n\n const headerHeight = computed(() => sum(props.headerHeight))\n\n const gridHeight = computed(() => {\n const { height } = props\n return Math.max(0, height - unref(headerHeight) - unref(fixedRowHeight))\n })\n\n const hasHeader = computed(() => {\n return unref(headerHeight) + unref(fixedRowHeight) > 0\n })\n\n const itemKey: GridItemKeyGetter = ({ data, rowIndex }) =>\n data[rowIndex][props.rowKey]\n\n function onItemRendered({\n rowCacheStart,\n rowCacheEnd,\n rowVisibleStart,\n rowVisibleEnd,\n }: GridItemRenderedEvtParams) {\n props.onRowsRendered?.({\n rowCacheStart,\n rowCacheEnd,\n rowVisibleStart,\n rowVisibleEnd,\n })\n }\n\n function resetAfterRowIndex(index: number, forceUpdate: boolean) {\n bodyRef.value?.resetAfterRowIndex(index, forceUpdate)\n }\n\n function scrollTo(x: number, y: number): void\n function scrollTo(options: GridScrollOptions): void\n function scrollTo(leftOrOptions: number | GridScrollOptions, top?: number) {\n const header$ = unref(headerRef)\n const body$ = unref(bodyRef)\n\n if (!header$ || !body$) return\n\n if (isObject(leftOrOptions)) {\n header$.scrollToLeft(leftOrOptions.scrollLeft)\n body$.scrollTo(leftOrOptions)\n } else {\n header$.scrollToLeft(leftOrOptions)\n body$.scrollTo({\n scrollLeft: leftOrOptions,\n scrollTop: top,\n })\n }\n }\n\n function scrollToTop(scrollTop: number) {\n unref(bodyRef)?.scrollTo({\n scrollTop,\n })\n }\n\n function scrollToRow(row: number, strategy: ScrollStrategy) {\n unref(bodyRef)?.scrollToItem(row, 1, strategy)\n }\n\n function forceUpdate() {\n unref(bodyRef)?.$forceUpdate()\n unref(headerRef)?.$forceUpdate()\n }\n\n return {\n bodyRef,\n forceUpdate,\n fixedRowHeight,\n gridHeight,\n hasHeader,\n headerHeight,\n headerRef,\n totalHeight,\n\n itemKey,\n onItemRendered,\n resetAfterRowIndex,\n scrollTo,\n scrollToTop,\n scrollToRow,\n }\n}\n\nconst TableGrid = defineComponent({\n name: COMPONENT_NAME,\n props: tableV2GridProps,\n setup(props, { slots, expose }) {\n const { ns } = inject(TableV2InjectionKey)!\n\n const {\n bodyRef,\n fixedRowHeight,\n gridHeight,\n hasHeader,\n headerRef,\n headerHeight,\n totalHeight,\n\n forceUpdate,\n itemKey,\n onItemRendered,\n resetAfterRowIndex,\n scrollTo,\n scrollToTop,\n scrollToRow,\n } = useTableGrid(props)\n\n expose({\n forceUpdate,\n /**\n * @description fetch total height\n */\n totalHeight,\n /**\n * @description scroll to a position\n */\n scrollTo,\n /**\n * @description scroll vertically to position y\n */\n scrollToTop,\n /**\n * @description scroll to a given row\n * @params row {Number} which row to scroll to\n * @params strategy {ScrollStrategy} use what strategy to scroll to\n */\n scrollToRow,\n /**\n * @description reset rendered state after row index\n */\n resetAfterRowIndex,\n })\n\n const getColumnWidth = () => props.bodyWidth\n\n return () => {\n const {\n cache,\n columns,\n data,\n fixedData,\n useIsScrolling,\n scrollbarAlwaysOn,\n scrollbarEndGap,\n scrollbarStartGap,\n style,\n rowHeight,\n bodyWidth,\n estimatedRowHeight,\n headerWidth,\n height,\n width,\n\n getRowHeight,\n onScroll,\n } = props\n\n const isDynamicRowEnabled = isNumber(estimatedRowHeight)\n const Grid = isDynamicRowEnabled ? DynamicSizeGrid : FixedSizeGrid\n const _headerHeight = unref(headerHeight)\n\n return (\n <div role=\"table\" class={[ns.e('table'), props.class]} style={style}>\n <Grid\n ref={bodyRef}\n // special attrs\n data={data}\n useIsScrolling={useIsScrolling}\n itemKey={itemKey}\n // column attrs\n columnCache={0}\n columnWidth={isDynamicRowEnabled ? getColumnWidth : bodyWidth}\n totalColumn={1}\n // row attrs\n totalRow={data.length}\n rowCache={cache}\n rowHeight={isDynamicRowEnabled ? getRowHeight : rowHeight}\n // DOM attrs\n width={width}\n height={unref(gridHeight)}\n class={ns.e('body')}\n scrollbarStartGap={scrollbarStartGap}\n scrollbarEndGap={scrollbarEndGap}\n scrollbarAlwaysOn={scrollbarAlwaysOn}\n // handlers\n onScroll={onScroll}\n onItemRendered={onItemRendered}\n perfMode={false}\n >\n {{\n default: (params: GridDefaultSlotParams) => {\n const rowData = data[params.rowIndex]\n return slots.row?.({\n ...params,\n columns,\n rowData,\n })\n },\n }}\n </Grid>\n {unref(hasHeader) && (\n <Header\n ref={headerRef}\n class={ns.e('header-wrapper')}\n columns={columns}\n headerData={data}\n headerHeight={props.headerHeight}\n fixedHeaderData={fixedData}\n rowWidth={headerWidth}\n rowHeight={rowHeight}\n width={width}\n height={Math.min(_headerHeight + unref(fixedRowHeight), height)}\n >\n {{\n dynamic: slots.header,\n fixed: slots.row,\n }}\n </Header>\n )}\n </div>\n )\n }\n },\n})\n\nexport default TableGrid\n\nexport type TableGridRowSlotParams = {\n columns: TableV2GridProps['columns']\n rowData: any\n} & GridDefaultSlotParams\n\nexport type TableGridInstance = InstanceType<typeof TableGrid> &\n UnwrapRef<{\n forceUpdate: () => void\n /**\n * @description fetch total height\n */\n totalHeight: number\n\n /**\n * @description scrollTo a position\n * @param { number | ScrollToOptions } arg1\n * @param { number } arg2\n */\n scrollTo(leftOrOptions: number | GridScrollOptions, top?: number): void\n\n /**\n * @description scroll vertically to position y\n */\n scrollToTop(scrollTop: number): void\n /**\n * @description scroll to a given row\n * @params row {Number} which row to scroll to\n * @params @optional strategy {ScrollStrategy} use what strategy to scroll to\n */\n scrollToRow(row: number, strategy: ScrollStrategy): void\n /**\n * @description reset rendered state after row index\n * @param { number } rowIndex\n * @param { boolean } forceUpdate\n */\n resetAfterRowIndex: ResetAfterIndex\n }>\n"],"names":["COMPONENT_NAME","useTableGrid","props","headerRef","ref","bodyRef","computed","data","rowHeight","estimatedRowHeight","fixedData","sum","headerHeight","gridHeight","unref","height","Math","max","hasHeader","itemKey","rowIndex","rowCacheStart","rowCacheEnd","rowVisibleStart","rowVisibleEnd","onRowsRendered","forceUpdate","isObject","header$","scrollToLeft","leftOrOptions","body$","scrollLeft","scrollTop","scrollToTop","row","fixedRowHeight","totalHeight","onItemRendered","defineComponent","scrollTo","tableV2GridProps","scrollToRow","TableGrid","name","TableV2InjectionKey","setup","slots","expose","ns","inject","resetAfterRowIndex","isNumber","DynamicSizeGrid","FixedSizeGrid","cache","columns","useIsScrolling","scrollbarAlwaysOn","scrollbarEndGap","scrollbarStartGap","style","bodyWidth","headerWidth","width","getRowHeight","onScroll","isDynamicRowEnabled","Grid","_headerHeight","_createVNode","Header","e","class"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ScrollStrategy } from './composables/use-scrollbar';
1
2
  declare const TableV2: import("vue").DefineComponent<{
2
3
  readonly cache: import("../../../utils").BuildPropReturn<NumberConstructor, 2, false, never, never>;
3
4
  readonly estimatedRowHeight: {
@@ -16,6 +17,7 @@ declare const TableV2: import("vue").DefineComponent<{
16
17
  readonly rowClass: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<string | import("./table").RowClassNameGetter<any>>, unknown, unknown, unknown, unknown>;
17
18
  readonly rowProps: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<any>, unknown, unknown, unknown, unknown>;
18
19
  readonly rowHeight: import("../../../utils").BuildPropReturn<NumberConstructor, 50, unknown, unknown, unknown>;
20
+ readonly cellProps: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<Record<string, any> | import("./table").ExtraCellPropGetter<any>>, unknown, unknown, unknown, unknown>;
19
21
  readonly columns: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./common").AnyColumn[]>, unknown, true, unknown, unknown>;
20
22
  readonly data: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<any[]>, unknown, true, unknown, unknown>;
21
23
  readonly dataGetter: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./types").DataGetter<any>>, unknown, unknown, unknown, unknown>;
@@ -43,10 +45,10 @@ declare const TableV2: import("vue").DefineComponent<{
43
45
  readonly onColumnSort: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./table").ColumnSortHandler<any>>, unknown, unknown, unknown, unknown>;
44
46
  readonly onExpandedRowsChange: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./table").ExpandedRowsChangeHandler>, unknown, unknown, unknown, unknown>;
45
47
  readonly onEndReached: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<(distance: number) => void>, unknown, unknown, unknown, unknown>;
46
- readonly onRowExpand: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./row").RowExpandHandler<any>>, unknown, unknown, unknown, unknown>;
48
+ readonly onRowExpand: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./row").RowExpandHandler>, unknown, unknown, unknown, unknown>;
47
49
  readonly onScroll: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<(...args: any[]) => void>, unknown, unknown, unknown, unknown>;
48
50
  readonly onRowsRendered: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<(params: import("./grid").onRowRenderedParams) => void>, unknown, unknown, unknown, unknown>;
49
- readonly rowEventHandlers: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./row").RowEventHandlers<any>>, unknown, unknown, unknown, unknown>;
51
+ readonly rowEventHandlers: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./row").RowEventHandlers>, unknown, unknown, unknown, unknown>;
50
52
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
51
53
  readonly cache: import("../../../utils").BuildPropReturn<NumberConstructor, 2, false, never, never>;
52
54
  readonly estimatedRowHeight: {
@@ -65,6 +67,7 @@ declare const TableV2: import("vue").DefineComponent<{
65
67
  readonly rowClass: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<string | import("./table").RowClassNameGetter<any>>, unknown, unknown, unknown, unknown>;
66
68
  readonly rowProps: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<any>, unknown, unknown, unknown, unknown>;
67
69
  readonly rowHeight: import("../../../utils").BuildPropReturn<NumberConstructor, 50, unknown, unknown, unknown>;
70
+ readonly cellProps: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<Record<string, any> | import("./table").ExtraCellPropGetter<any>>, unknown, unknown, unknown, unknown>;
68
71
  readonly columns: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./common").AnyColumn[]>, unknown, true, unknown, unknown>;
69
72
  readonly data: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<any[]>, unknown, true, unknown, unknown>;
70
73
  readonly dataGetter: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./types").DataGetter<any>>, unknown, unknown, unknown, unknown>;
@@ -92,10 +95,10 @@ declare const TableV2: import("vue").DefineComponent<{
92
95
  readonly onColumnSort: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./table").ColumnSortHandler<any>>, unknown, unknown, unknown, unknown>;
93
96
  readonly onExpandedRowsChange: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./table").ExpandedRowsChangeHandler>, unknown, unknown, unknown, unknown>;
94
97
  readonly onEndReached: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<(distance: number) => void>, unknown, unknown, unknown, unknown>;
95
- readonly onRowExpand: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./row").RowExpandHandler<any>>, unknown, unknown, unknown, unknown>;
98
+ readonly onRowExpand: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./row").RowExpandHandler>, unknown, unknown, unknown, unknown>;
96
99
  readonly onScroll: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<(...args: any[]) => void>, unknown, unknown, unknown, unknown>;
97
100
  readonly onRowsRendered: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<(params: import("./grid").onRowRenderedParams) => void>, unknown, unknown, unknown, unknown>;
98
- readonly rowEventHandlers: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./row").RowEventHandlers<any>>, unknown, unknown, unknown, unknown>;
101
+ readonly rowEventHandlers: import("../../../utils").BuildPropReturn<import("../../../utils").PropWrapper<import("./row").RowEventHandlers>, unknown, unknown, unknown, unknown>;
99
102
  }>>, {
100
103
  fixed: boolean;
101
104
  onScroll: (...args: any[]) => void;
@@ -108,8 +111,8 @@ declare const TableV2: import("vue").DefineComponent<{
108
111
  rowHeight: number;
109
112
  hScrollbarSize: number;
110
113
  vScrollbarSize: number;
111
- onRowExpand: import("./row").RowExpandHandler<any>;
112
- rowEventHandlers: import("./row").RowEventHandlers<any>;
114
+ onRowExpand: import("./row").RowExpandHandler;
115
+ rowEventHandlers: import("./row").RowEventHandlers;
113
116
  headerHeight: import("../../../utils").BuildPropType<import("../../../utils").PropWrapper<number | number[]>, unknown, unknown>;
114
117
  cache: number;
115
118
  onRowsRendered: (params: import("./grid").onRowRenderedParams) => void;
@@ -120,6 +123,7 @@ declare const TableV2: import("vue").DefineComponent<{
120
123
  footerHeight: number;
121
124
  rowClass: import("../../../utils").BuildPropType<import("../../../utils").PropWrapper<string | import("./table").RowClassNameGetter<any>>, unknown, unknown>;
122
125
  rowProps: any;
126
+ cellProps: import("../../../utils").BuildPropType<import("../../../utils").PropWrapper<Record<string, any> | import("./table").ExtraCellPropGetter<any>>, unknown, unknown>;
123
127
  dataGetter: import("./types").DataGetter<any>;
124
128
  indentSize: number;
125
129
  iconSize: number;
@@ -131,4 +135,29 @@ declare const TableV2: import("vue").DefineComponent<{
131
135
  defaultExpandedRowKeys: import("./types").KeyType[];
132
136
  }>;
133
137
  export default TableV2;
134
- export declare type TableV2Instance = InstanceType<typeof TableV2>;
138
+ export declare type TableV2Instance = InstanceType<typeof TableV2> & {
139
+ /**
140
+ * @description scroll to a given position
141
+ * @params params {{ scrollLeft?: number, scrollTop?: number }} where to scroll to.
142
+ */
143
+ scrollTo: (param: {
144
+ scrollLeft?: number;
145
+ scrollTop?: number;
146
+ }) => void;
147
+ /**
148
+ * @description scroll to a given position horizontally
149
+ * @params scrollLeft {Number} where to scroll to.
150
+ */
151
+ scrollToLeft: (scrollLeft: number) => void;
152
+ /**
153
+ * @description scroll to a given position vertically
154
+ * @params scrollTop { Number } where to scroll to.
155
+ */
156
+ scrollToTop: (scrollTop: number) => void;
157
+ /**
158
+ * @description scroll to a given row
159
+ * @params row {Number} which row to scroll to
160
+ * @params strategy {ScrollStrategy} use what strategy to scroll to
161
+ */
162
+ scrollToRow(row: number, strategy?: ScrollStrategy): void;
163
+ };
@@ -27,7 +27,8 @@ const TableV2 = vue.defineComponent({
27
27
  name: COMPONENT_NAME,
28
28
  props: table.tableV2Props,
29
29
  setup(props, {
30
- slots
30
+ slots,
31
+ expose
31
32
  }) {
32
33
  const ns = index.useNamespace("table-v2");
33
34
  const {
@@ -56,6 +57,10 @@ const TableV2 = vue.defineComponent({
56
57
  headerWidth,
57
58
  footerHeight,
58
59
  showEmpty,
60
+ scrollTo,
61
+ scrollToLeft,
62
+ scrollToTop,
63
+ scrollToRow,
59
64
  getRowHeight,
60
65
  onColumnSorted,
61
66
  onRowHeightChange,
@@ -65,6 +70,12 @@ const TableV2 = vue.defineComponent({
65
70
  onScroll,
66
71
  onVerticalScroll
67
72
  } = useTable.useTable(props);
73
+ expose({
74
+ scrollTo,
75
+ scrollToLeft,
76
+ scrollToTop,
77
+ scrollToRow
78
+ });
68
79
  vue.provide(tokens.TableV2InjectionKey, {
69
80
  ns,
70
81
  isResetting,
@@ -74,6 +85,7 @@ const TableV2 = vue.defineComponent({
74
85
  return () => {
75
86
  const {
76
87
  cache,
88
+ cellProps,
77
89
  estimatedRowHeight,
78
90
  expandColumnKey,
79
91
  fixedData,
@@ -185,6 +197,7 @@ const TableV2 = vue.defineComponent({
185
197
  onRowHeightChange
186
198
  };
187
199
  const tableCellProps = {
200
+ cellProps,
188
201
  expandColumnKey,
189
202
  indentSize,
190
203
  iconSize,
@@ -227,7 +240,7 @@ const TableV2 = vue.defineComponent({
227
240
  }), null)
228
241
  })
229
242
  };
230
- const rootKls = [ns.b(), ns.e("root"), {
243
+ const rootKls = [props.class, ns.b(), ns.e("root"), {
231
244
  [ns.is("dynamic")]: vue.unref(isDynamic)
232
245
  }];
233
246
  const footerProps = {