@element-plus/nightly 0.0.20250629 → 0.0.20250630

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 (616) hide show
  1. package/dist/index.full.js +96 -88
  2. package/dist/index.full.min.js +10 -10
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +11 -11
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +96 -88
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hi.js +1 -1
  92. package/dist/locale/hi.min.js +1 -1
  93. package/dist/locale/hi.min.mjs +1 -1
  94. package/dist/locale/hi.mjs +1 -1
  95. package/dist/locale/hr.js +1 -1
  96. package/dist/locale/hr.min.js +1 -1
  97. package/dist/locale/hr.min.mjs +1 -1
  98. package/dist/locale/hr.mjs +1 -1
  99. package/dist/locale/hu.js +1 -1
  100. package/dist/locale/hu.min.js +1 -1
  101. package/dist/locale/hu.min.mjs +1 -1
  102. package/dist/locale/hu.mjs +1 -1
  103. package/dist/locale/hy-am.js +1 -1
  104. package/dist/locale/hy-am.min.js +1 -1
  105. package/dist/locale/hy-am.min.mjs +1 -1
  106. package/dist/locale/hy-am.mjs +1 -1
  107. package/dist/locale/id.js +1 -1
  108. package/dist/locale/id.min.js +1 -1
  109. package/dist/locale/id.min.mjs +1 -1
  110. package/dist/locale/id.mjs +1 -1
  111. package/dist/locale/it.js +1 -1
  112. package/dist/locale/it.min.js +1 -1
  113. package/dist/locale/it.min.mjs +1 -1
  114. package/dist/locale/it.mjs +1 -1
  115. package/dist/locale/ja.js +1 -1
  116. package/dist/locale/ja.min.js +1 -1
  117. package/dist/locale/ja.min.mjs +1 -1
  118. package/dist/locale/ja.mjs +1 -1
  119. package/dist/locale/kk.js +1 -1
  120. package/dist/locale/kk.min.js +1 -1
  121. package/dist/locale/kk.min.mjs +1 -1
  122. package/dist/locale/kk.mjs +1 -1
  123. package/dist/locale/km.js +1 -1
  124. package/dist/locale/km.min.js +1 -1
  125. package/dist/locale/km.min.mjs +1 -1
  126. package/dist/locale/km.mjs +1 -1
  127. package/dist/locale/ko.js +1 -1
  128. package/dist/locale/ko.min.js +1 -1
  129. package/dist/locale/ko.min.mjs +1 -1
  130. package/dist/locale/ko.mjs +1 -1
  131. package/dist/locale/ku.js +1 -1
  132. package/dist/locale/ku.min.js +1 -1
  133. package/dist/locale/ku.min.mjs +1 -1
  134. package/dist/locale/ku.mjs +1 -1
  135. package/dist/locale/ky.js +1 -1
  136. package/dist/locale/ky.min.js +1 -1
  137. package/dist/locale/ky.min.mjs +1 -1
  138. package/dist/locale/ky.mjs +1 -1
  139. package/dist/locale/lo.js +1 -1
  140. package/dist/locale/lo.min.js +1 -1
  141. package/dist/locale/lo.min.mjs +1 -1
  142. package/dist/locale/lo.mjs +1 -1
  143. package/dist/locale/lt.js +1 -1
  144. package/dist/locale/lt.min.js +1 -1
  145. package/dist/locale/lt.min.mjs +1 -1
  146. package/dist/locale/lt.mjs +1 -1
  147. package/dist/locale/lv.js +1 -1
  148. package/dist/locale/lv.min.js +1 -1
  149. package/dist/locale/lv.min.mjs +1 -1
  150. package/dist/locale/lv.mjs +1 -1
  151. package/dist/locale/mg.js +1 -1
  152. package/dist/locale/mg.min.js +1 -1
  153. package/dist/locale/mg.min.mjs +1 -1
  154. package/dist/locale/mg.mjs +1 -1
  155. package/dist/locale/mn.js +1 -1
  156. package/dist/locale/mn.min.js +1 -1
  157. package/dist/locale/mn.min.mjs +1 -1
  158. package/dist/locale/mn.mjs +1 -1
  159. package/dist/locale/ms.js +1 -1
  160. package/dist/locale/ms.min.js +1 -1
  161. package/dist/locale/ms.min.mjs +1 -1
  162. package/dist/locale/ms.mjs +1 -1
  163. package/dist/locale/my.js +1 -1
  164. package/dist/locale/my.min.js +1 -1
  165. package/dist/locale/my.min.mjs +1 -1
  166. package/dist/locale/my.mjs +1 -1
  167. package/dist/locale/nb-no.js +1 -1
  168. package/dist/locale/nb-no.min.js +1 -1
  169. package/dist/locale/nb-no.min.mjs +1 -1
  170. package/dist/locale/nb-no.mjs +1 -1
  171. package/dist/locale/nl.js +1 -1
  172. package/dist/locale/nl.min.js +1 -1
  173. package/dist/locale/nl.min.mjs +1 -1
  174. package/dist/locale/nl.mjs +1 -1
  175. package/dist/locale/no.js +1 -1
  176. package/dist/locale/no.min.js +1 -1
  177. package/dist/locale/no.min.mjs +1 -1
  178. package/dist/locale/no.mjs +1 -1
  179. package/dist/locale/pa.js +1 -1
  180. package/dist/locale/pa.min.js +1 -1
  181. package/dist/locale/pa.min.mjs +1 -1
  182. package/dist/locale/pa.mjs +1 -1
  183. package/dist/locale/pl.js +1 -1
  184. package/dist/locale/pl.min.js +1 -1
  185. package/dist/locale/pl.min.mjs +1 -1
  186. package/dist/locale/pl.mjs +1 -1
  187. package/dist/locale/pt-br.js +1 -1
  188. package/dist/locale/pt-br.min.js +1 -1
  189. package/dist/locale/pt-br.min.mjs +1 -1
  190. package/dist/locale/pt-br.mjs +1 -1
  191. package/dist/locale/pt.js +1 -1
  192. package/dist/locale/pt.min.js +1 -1
  193. package/dist/locale/pt.min.mjs +1 -1
  194. package/dist/locale/pt.mjs +1 -1
  195. package/dist/locale/ro.js +1 -1
  196. package/dist/locale/ro.min.js +1 -1
  197. package/dist/locale/ro.min.mjs +1 -1
  198. package/dist/locale/ro.mjs +1 -1
  199. package/dist/locale/ru.js +1 -1
  200. package/dist/locale/ru.min.js +1 -1
  201. package/dist/locale/ru.min.mjs +1 -1
  202. package/dist/locale/ru.mjs +1 -1
  203. package/dist/locale/sk.js +1 -1
  204. package/dist/locale/sk.min.js +1 -1
  205. package/dist/locale/sk.min.mjs +1 -1
  206. package/dist/locale/sk.mjs +1 -1
  207. package/dist/locale/sl.js +1 -1
  208. package/dist/locale/sl.min.js +1 -1
  209. package/dist/locale/sl.min.mjs +1 -1
  210. package/dist/locale/sl.mjs +1 -1
  211. package/dist/locale/sr.js +1 -1
  212. package/dist/locale/sr.min.js +1 -1
  213. package/dist/locale/sr.min.mjs +1 -1
  214. package/dist/locale/sr.mjs +1 -1
  215. package/dist/locale/sv.js +1 -1
  216. package/dist/locale/sv.min.js +1 -1
  217. package/dist/locale/sv.min.mjs +1 -1
  218. package/dist/locale/sv.mjs +1 -1
  219. package/dist/locale/sw.js +1 -1
  220. package/dist/locale/sw.min.js +1 -1
  221. package/dist/locale/sw.min.mjs +1 -1
  222. package/dist/locale/sw.mjs +1 -1
  223. package/dist/locale/ta.js +1 -1
  224. package/dist/locale/ta.min.js +1 -1
  225. package/dist/locale/ta.min.mjs +1 -1
  226. package/dist/locale/ta.mjs +1 -1
  227. package/dist/locale/te.js +1 -1
  228. package/dist/locale/te.min.js +1 -1
  229. package/dist/locale/te.min.mjs +1 -1
  230. package/dist/locale/te.mjs +1 -1
  231. package/dist/locale/th.js +1 -1
  232. package/dist/locale/th.min.js +1 -1
  233. package/dist/locale/th.min.mjs +1 -1
  234. package/dist/locale/th.mjs +1 -1
  235. package/dist/locale/tk.js +1 -1
  236. package/dist/locale/tk.min.js +1 -1
  237. package/dist/locale/tk.min.mjs +1 -1
  238. package/dist/locale/tk.mjs +1 -1
  239. package/dist/locale/tr.js +1 -1
  240. package/dist/locale/tr.min.js +1 -1
  241. package/dist/locale/tr.min.mjs +1 -1
  242. package/dist/locale/tr.mjs +1 -1
  243. package/dist/locale/ug-cn.js +1 -1
  244. package/dist/locale/ug-cn.min.js +1 -1
  245. package/dist/locale/ug-cn.min.mjs +1 -1
  246. package/dist/locale/ug-cn.mjs +1 -1
  247. package/dist/locale/uk.js +1 -1
  248. package/dist/locale/uk.min.js +1 -1
  249. package/dist/locale/uk.min.mjs +1 -1
  250. package/dist/locale/uk.mjs +1 -1
  251. package/dist/locale/uz-uz.js +1 -1
  252. package/dist/locale/uz-uz.min.js +1 -1
  253. package/dist/locale/uz-uz.min.mjs +1 -1
  254. package/dist/locale/uz-uz.mjs +1 -1
  255. package/dist/locale/vi.js +1 -1
  256. package/dist/locale/vi.min.js +1 -1
  257. package/dist/locale/vi.min.mjs +1 -1
  258. package/dist/locale/vi.mjs +1 -1
  259. package/dist/locale/zh-cn.js +1 -1
  260. package/dist/locale/zh-cn.min.js +1 -1
  261. package/dist/locale/zh-cn.min.mjs +1 -1
  262. package/dist/locale/zh-cn.mjs +1 -1
  263. package/dist/locale/zh-hk.js +1 -1
  264. package/dist/locale/zh-hk.min.js +1 -1
  265. package/dist/locale/zh-hk.min.mjs +1 -1
  266. package/dist/locale/zh-hk.mjs +1 -1
  267. package/dist/locale/zh-mo.js +1 -1
  268. package/dist/locale/zh-mo.min.js +1 -1
  269. package/dist/locale/zh-mo.min.mjs +1 -1
  270. package/dist/locale/zh-mo.mjs +1 -1
  271. package/dist/locale/zh-tw.js +1 -1
  272. package/dist/locale/zh-tw.min.js +1 -1
  273. package/dist/locale/zh-tw.min.mjs +1 -1
  274. package/dist/locale/zh-tw.mjs +1 -1
  275. package/es/components/affix/index.mjs +2 -2
  276. package/es/components/affix/src/affix.mjs +24 -119
  277. package/es/components/affix/src/affix.mjs.map +1 -1
  278. package/es/components/affix/src/affix2.mjs +119 -24
  279. package/es/components/affix/src/affix2.mjs.map +1 -1
  280. package/es/components/anchor/index.mjs +2 -2
  281. package/es/components/anchor/src/anchor.mjs +42 -193
  282. package/es/components/anchor/src/anchor.mjs.map +1 -1
  283. package/es/components/anchor/src/anchor2.mjs +206 -42
  284. package/es/components/anchor/src/anchor2.mjs.map +1 -1
  285. package/es/components/carousel/index.mjs +4 -4
  286. package/es/components/carousel/src/carousel-item.mjs +7 -69
  287. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  288. package/es/components/carousel/src/carousel-item2.mjs +69 -7
  289. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  290. package/es/components/carousel/src/carousel.mjs +61 -214
  291. package/es/components/carousel/src/carousel.mjs.map +1 -1
  292. package/es/components/carousel/src/carousel2.mjs +214 -61
  293. package/es/components/carousel/src/carousel2.mjs.map +1 -1
  294. package/es/components/cascader/index.mjs +2 -2
  295. package/es/components/cascader/src/cascader.mjs +84 -652
  296. package/es/components/cascader/src/cascader.mjs.map +1 -1
  297. package/es/components/cascader/src/cascader2.mjs +652 -84
  298. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  299. package/es/components/cascader-panel/src/index.mjs +1 -1
  300. package/es/components/cascader-panel/src/menu.mjs +1 -1
  301. package/es/components/cascader-panel/src/node.mjs +115 -178
  302. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  303. package/es/components/cascader-panel/src/node2.mjs +178 -115
  304. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  305. package/es/components/cascader-panel/src/store.mjs +1 -1
  306. package/es/components/collapse/index.mjs +2 -2
  307. package/es/components/collapse/src/collapse.mjs +23 -28
  308. package/es/components/collapse/src/collapse.mjs.map +1 -1
  309. package/es/components/collapse/src/collapse2.mjs +28 -23
  310. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  311. package/es/components/collection/index.mjs +1 -1
  312. package/es/components/collection/src/collection.mjs +62 -10
  313. package/es/components/collection/src/collection.mjs.map +1 -1
  314. package/es/components/collection/src/collection2.mjs +10 -62
  315. package/es/components/collection/src/collection2.mjs.map +1 -1
  316. package/es/components/dialog/index.mjs +2 -2
  317. package/es/components/dialog/src/dialog.mjs +68 -172
  318. package/es/components/dialog/src/dialog.mjs.map +1 -1
  319. package/es/components/dialog/src/dialog2.mjs +172 -68
  320. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  321. package/es/components/drawer/src/drawer.mjs +1 -1
  322. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  323. package/es/components/dropdown/src/dropdown.mjs +1 -1
  324. package/es/components/form/index.mjs +2 -2
  325. package/es/components/form/src/form-item.mjs +47 -322
  326. package/es/components/form/src/form-item.mjs.map +1 -1
  327. package/es/components/form/src/form-item2.mjs +322 -47
  328. package/es/components/form/src/form-item2.mjs.map +1 -1
  329. package/es/components/icon/index.mjs +2 -2
  330. package/es/components/icon/src/icon.mjs +8 -35
  331. package/es/components/icon/src/icon.mjs.map +1 -1
  332. package/es/components/icon/src/icon2.mjs +35 -8
  333. package/es/components/icon/src/icon2.mjs.map +1 -1
  334. package/es/components/index.mjs +19 -19
  335. package/es/components/input/index.mjs +2 -2
  336. package/es/components/input/src/input.mjs +437 -106
  337. package/es/components/input/src/input.mjs.map +1 -1
  338. package/es/components/input/src/input2.mjs +106 -437
  339. package/es/components/input/src/input2.mjs.map +1 -1
  340. package/es/components/input-tag/index.mjs +2 -2
  341. package/es/components/input-tag/src/input-tag.mjs +215 -73
  342. package/es/components/input-tag/src/input-tag.mjs.map +1 -1
  343. package/es/components/input-tag/src/input-tag2.mjs +73 -215
  344. package/es/components/input-tag/src/input-tag2.mjs.map +1 -1
  345. package/es/components/mention/index.mjs +2 -2
  346. package/es/components/mention/src/mention.mjs +287 -65
  347. package/es/components/mention/src/mention.mjs.map +1 -1
  348. package/es/components/mention/src/mention2.mjs +65 -287
  349. package/es/components/mention/src/mention2.mjs.map +1 -1
  350. package/es/components/page-header/index.mjs +2 -2
  351. package/es/components/page-header/src/page-header.mjs +97 -16
  352. package/es/components/page-header/src/page-header.mjs.map +1 -1
  353. package/es/components/page-header/src/page-header2.mjs +16 -97
  354. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  355. package/es/components/progress/index.mjs +2 -2
  356. package/es/components/progress/src/progress.mjs +53 -207
  357. package/es/components/progress/src/progress.mjs.map +1 -1
  358. package/es/components/progress/src/progress2.mjs +207 -53
  359. package/es/components/progress/src/progress2.mjs.map +1 -1
  360. package/es/components/radio/index.mjs +2 -2
  361. package/es/components/radio/src/radio-group.mjs +34 -65
  362. package/es/components/radio/src/radio-group.mjs.map +1 -1
  363. package/es/components/radio/src/radio-group2.mjs +65 -34
  364. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  365. package/es/components/result/index.mjs +2 -2
  366. package/es/components/result/src/result.mjs +30 -62
  367. package/es/components/result/src/result.mjs.map +1 -1
  368. package/es/components/result/src/result2.mjs +62 -30
  369. package/es/components/result/src/result2.mjs.map +1 -1
  370. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  371. package/es/components/splitter/index.mjs +2 -2
  372. package/es/components/splitter/src/split-panel.mjs +150 -19
  373. package/es/components/splitter/src/split-panel.mjs.map +1 -1
  374. package/es/components/splitter/src/split-panel2.mjs +19 -150
  375. package/es/components/splitter/src/split-panel2.mjs.map +1 -1
  376. package/es/components/steps/index.mjs +2 -2
  377. package/es/components/steps/src/steps.mjs +41 -35
  378. package/es/components/steps/src/steps.mjs.map +1 -1
  379. package/es/components/steps/src/steps2.mjs +35 -41
  380. package/es/components/steps/src/steps2.mjs.map +1 -1
  381. package/es/components/switch/index.mjs +2 -2
  382. package/es/components/switch/src/switch.mjs +228 -72
  383. package/es/components/switch/src/switch.mjs.map +1 -1
  384. package/es/components/switch/src/switch2.mjs +72 -228
  385. package/es/components/switch/src/switch2.mjs.map +1 -1
  386. package/es/components/table/src/store/expand.d.ts +3 -2
  387. package/es/components/table/src/store/expand.mjs.map +1 -1
  388. package/es/components/table/src/store/helper.d.ts +518 -1
  389. package/es/components/table/src/store/index.d.ts +1042 -6
  390. package/es/components/table/src/store/index.mjs +12 -6
  391. package/es/components/table/src/store/index.mjs.map +1 -1
  392. package/es/components/table/src/store/tree.d.ts +25 -1
  393. package/es/components/table/src/store/tree.mjs +7 -5
  394. package/es/components/table/src/store/tree.mjs.map +1 -1
  395. package/es/components/table/src/store/watcher.d.ts +79 -1
  396. package/es/components/table/src/store/watcher.mjs +9 -10
  397. package/es/components/table/src/store/watcher.mjs.map +1 -1
  398. package/es/components/table/src/table/defaults.d.ts +36 -34
  399. package/es/components/table/src/table/defaults.mjs.map +1 -1
  400. package/es/components/table/src/table/style-helper.d.ts +4 -5
  401. package/es/components/table/src/table/style-helper.mjs +7 -21
  402. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  403. package/es/components/table/src/table/utils-helper.d.ts +1 -1
  404. package/es/components/table/src/table-body/index.d.ts +4 -4
  405. package/es/components/table/src/table-body/styles-helper.d.ts +1 -1
  406. package/es/components/table/src/table-column/defaults.d.ts +30 -25
  407. package/es/components/table/src/table-column/defaults.mjs.map +1 -1
  408. package/es/components/table/src/table-column/index.d.ts +27 -28
  409. package/es/components/table/src/table-footer/index.d.ts +5 -5
  410. package/es/components/table/src/table-footer/mapState-helper.d.ts +6 -6
  411. package/es/components/table/src/table-footer/style-helper.d.ts +4 -3
  412. package/es/components/table/src/table-footer/style-helper.mjs.map +1 -1
  413. package/es/components/table/src/table-header/index.d.ts +4 -4
  414. package/es/components/table/src/table-header/style.helper.d.ts +3 -2
  415. package/es/components/table/src/table-header/style.helper.mjs.map +1 -1
  416. package/es/components/table/src/table-header/utils-helper.d.ts +1 -1
  417. package/es/components/table/src/table-layout.d.ts +4 -4
  418. package/es/components/table/src/table-layout.mjs +8 -5
  419. package/es/components/table/src/table-layout.mjs.map +1 -1
  420. package/es/components/table/src/table.mjs +0 -2
  421. package/es/components/table/src/table.mjs.map +1 -1
  422. package/es/components/table/src/table.vue.d.ts +564 -48
  423. package/es/components/table/src/util.d.ts +20 -20
  424. package/es/components/table/src/util.mjs +16 -14
  425. package/es/components/table/src/util.mjs.map +1 -1
  426. package/es/components/teleport/index.mjs +2 -2
  427. package/es/components/teleport/src/teleport.mjs +18 -8
  428. package/es/components/teleport/src/teleport.mjs.map +1 -1
  429. package/es/components/teleport/src/teleport2.mjs +8 -18
  430. package/es/components/teleport/src/teleport2.mjs.map +1 -1
  431. package/es/components/tooltip/src/content.mjs +1 -1
  432. package/es/components/tooltip-v2/index.mjs +1 -1
  433. package/es/components/tooltip-v2/src/content.mjs +48 -110
  434. package/es/components/tooltip-v2/src/content.mjs.map +1 -1
  435. package/es/components/tooltip-v2/src/content2.mjs +110 -48
  436. package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
  437. package/es/components/tooltip-v2/src/tooltip.mjs +1 -1
  438. package/es/components/tooltip-v2/src/tooltip2.mjs +2 -2
  439. package/es/components/tour/src/tour.mjs +1 -1
  440. package/es/index.d.ts +1158 -113
  441. package/es/index.mjs +19 -19
  442. package/es/version.d.ts +1 -1
  443. package/es/version.mjs +1 -1
  444. package/es/version.mjs.map +1 -1
  445. package/lib/components/affix/index.js +2 -2
  446. package/lib/components/affix/src/affix.js +25 -119
  447. package/lib/components/affix/src/affix.js.map +1 -1
  448. package/lib/components/affix/src/affix2.js +119 -25
  449. package/lib/components/affix/src/affix2.js.map +1 -1
  450. package/lib/components/anchor/index.js +2 -2
  451. package/lib/components/anchor/src/anchor.js +42 -192
  452. package/lib/components/anchor/src/anchor.js.map +1 -1
  453. package/lib/components/anchor/src/anchor2.js +205 -42
  454. package/lib/components/anchor/src/anchor2.js.map +1 -1
  455. package/lib/components/carousel/index.js +4 -4
  456. package/lib/components/carousel/src/carousel-item.js +7 -69
  457. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  458. package/lib/components/carousel/src/carousel-item2.js +69 -7
  459. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  460. package/lib/components/carousel/src/carousel.js +62 -214
  461. package/lib/components/carousel/src/carousel.js.map +1 -1
  462. package/lib/components/carousel/src/carousel2.js +214 -62
  463. package/lib/components/carousel/src/carousel2.js.map +1 -1
  464. package/lib/components/cascader/index.js +2 -2
  465. package/lib/components/cascader/src/cascader.js +85 -652
  466. package/lib/components/cascader/src/cascader.js.map +1 -1
  467. package/lib/components/cascader/src/cascader2.js +652 -85
  468. package/lib/components/cascader/src/cascader2.js.map +1 -1
  469. package/lib/components/cascader-panel/src/index.js +1 -1
  470. package/lib/components/cascader-panel/src/menu.js +1 -1
  471. package/lib/components/cascader-panel/src/node.js +115 -178
  472. package/lib/components/cascader-panel/src/node.js.map +1 -1
  473. package/lib/components/cascader-panel/src/node2.js +178 -115
  474. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  475. package/lib/components/cascader-panel/src/store.js +1 -1
  476. package/lib/components/collapse/index.js +2 -2
  477. package/lib/components/collapse/src/collapse.js +25 -28
  478. package/lib/components/collapse/src/collapse.js.map +1 -1
  479. package/lib/components/collapse/src/collapse2.js +28 -25
  480. package/lib/components/collapse/src/collapse2.js.map +1 -1
  481. package/lib/components/collection/index.js +1 -1
  482. package/lib/components/collection/src/collection.js +62 -9
  483. package/lib/components/collection/src/collection.js.map +1 -1
  484. package/lib/components/collection/src/collection2.js +9 -62
  485. package/lib/components/collection/src/collection2.js.map +1 -1
  486. package/lib/components/dialog/index.js +2 -2
  487. package/lib/components/dialog/src/dialog.js +69 -172
  488. package/lib/components/dialog/src/dialog.js.map +1 -1
  489. package/lib/components/dialog/src/dialog2.js +172 -69
  490. package/lib/components/dialog/src/dialog2.js.map +1 -1
  491. package/lib/components/drawer/src/drawer.js +1 -1
  492. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  493. package/lib/components/dropdown/src/dropdown.js +1 -1
  494. package/lib/components/form/index.js +2 -2
  495. package/lib/components/form/src/form-item.js +48 -326
  496. package/lib/components/form/src/form-item.js.map +1 -1
  497. package/lib/components/form/src/form-item2.js +326 -48
  498. package/lib/components/form/src/form-item2.js.map +1 -1
  499. package/lib/components/icon/index.js +2 -2
  500. package/lib/components/icon/src/icon.js +8 -35
  501. package/lib/components/icon/src/icon.js.map +1 -1
  502. package/lib/components/icon/src/icon2.js +35 -8
  503. package/lib/components/icon/src/icon2.js.map +1 -1
  504. package/lib/components/index.js +19 -19
  505. package/lib/components/input/index.js +2 -2
  506. package/lib/components/input/src/input.js +434 -104
  507. package/lib/components/input/src/input.js.map +1 -1
  508. package/lib/components/input/src/input2.js +104 -434
  509. package/lib/components/input/src/input2.js.map +1 -1
  510. package/lib/components/input-tag/index.js +2 -2
  511. package/lib/components/input-tag/src/input-tag.js +214 -73
  512. package/lib/components/input-tag/src/input-tag.js.map +1 -1
  513. package/lib/components/input-tag/src/input-tag2.js +73 -214
  514. package/lib/components/input-tag/src/input-tag2.js.map +1 -1
  515. package/lib/components/mention/index.js +2 -2
  516. package/lib/components/mention/src/mention.js +285 -64
  517. package/lib/components/mention/src/mention.js.map +1 -1
  518. package/lib/components/mention/src/mention2.js +64 -285
  519. package/lib/components/mention/src/mention2.js.map +1 -1
  520. package/lib/components/page-header/index.js +2 -2
  521. package/lib/components/page-header/src/page-header.js +97 -17
  522. package/lib/components/page-header/src/page-header.js.map +1 -1
  523. package/lib/components/page-header/src/page-header2.js +17 -97
  524. package/lib/components/page-header/src/page-header2.js.map +1 -1
  525. package/lib/components/progress/index.js +2 -2
  526. package/lib/components/progress/src/progress.js +53 -207
  527. package/lib/components/progress/src/progress.js.map +1 -1
  528. package/lib/components/progress/src/progress2.js +207 -53
  529. package/lib/components/progress/src/progress2.js.map +1 -1
  530. package/lib/components/radio/index.js +2 -2
  531. package/lib/components/radio/src/radio-group.js +35 -65
  532. package/lib/components/radio/src/radio-group.js.map +1 -1
  533. package/lib/components/radio/src/radio-group2.js +65 -35
  534. package/lib/components/radio/src/radio-group2.js.map +1 -1
  535. package/lib/components/result/index.js +2 -2
  536. package/lib/components/result/src/result.js +32 -62
  537. package/lib/components/result/src/result.js.map +1 -1
  538. package/lib/components/result/src/result2.js +62 -32
  539. package/lib/components/result/src/result2.js.map +1 -1
  540. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  541. package/lib/components/splitter/index.js +2 -2
  542. package/lib/components/splitter/src/split-panel.js +150 -19
  543. package/lib/components/splitter/src/split-panel.js.map +1 -1
  544. package/lib/components/splitter/src/split-panel2.js +19 -150
  545. package/lib/components/splitter/src/split-panel2.js.map +1 -1
  546. package/lib/components/steps/index.js +2 -2
  547. package/lib/components/steps/src/steps.js +41 -36
  548. package/lib/components/steps/src/steps.js.map +1 -1
  549. package/lib/components/steps/src/steps2.js +36 -41
  550. package/lib/components/steps/src/steps2.js.map +1 -1
  551. package/lib/components/switch/index.js +2 -2
  552. package/lib/components/switch/src/switch.js +227 -72
  553. package/lib/components/switch/src/switch.js.map +1 -1
  554. package/lib/components/switch/src/switch2.js +72 -227
  555. package/lib/components/switch/src/switch2.js.map +1 -1
  556. package/lib/components/table/src/store/expand.d.ts +3 -2
  557. package/lib/components/table/src/store/expand.js.map +1 -1
  558. package/lib/components/table/src/store/helper.d.ts +518 -1
  559. package/lib/components/table/src/store/index.d.ts +1042 -6
  560. package/lib/components/table/src/store/index.js +12 -6
  561. package/lib/components/table/src/store/index.js.map +1 -1
  562. package/lib/components/table/src/store/tree.d.ts +25 -1
  563. package/lib/components/table/src/store/tree.js +7 -5
  564. package/lib/components/table/src/store/tree.js.map +1 -1
  565. package/lib/components/table/src/store/watcher.d.ts +79 -1
  566. package/lib/components/table/src/store/watcher.js +8 -9
  567. package/lib/components/table/src/store/watcher.js.map +1 -1
  568. package/lib/components/table/src/table/defaults.d.ts +36 -34
  569. package/lib/components/table/src/table/defaults.js.map +1 -1
  570. package/lib/components/table/src/table/style-helper.d.ts +4 -5
  571. package/lib/components/table/src/table/style-helper.js +7 -21
  572. package/lib/components/table/src/table/style-helper.js.map +1 -1
  573. package/lib/components/table/src/table/utils-helper.d.ts +1 -1
  574. package/lib/components/table/src/table-body/index.d.ts +4 -4
  575. package/lib/components/table/src/table-body/styles-helper.d.ts +1 -1
  576. package/lib/components/table/src/table-column/defaults.d.ts +30 -25
  577. package/lib/components/table/src/table-column/defaults.js.map +1 -1
  578. package/lib/components/table/src/table-column/index.d.ts +27 -28
  579. package/lib/components/table/src/table-footer/index.d.ts +5 -5
  580. package/lib/components/table/src/table-footer/mapState-helper.d.ts +6 -6
  581. package/lib/components/table/src/table-footer/style-helper.d.ts +4 -3
  582. package/lib/components/table/src/table-footer/style-helper.js.map +1 -1
  583. package/lib/components/table/src/table-header/index.d.ts +4 -4
  584. package/lib/components/table/src/table-header/style.helper.d.ts +3 -2
  585. package/lib/components/table/src/table-header/style.helper.js.map +1 -1
  586. package/lib/components/table/src/table-header/utils-helper.d.ts +1 -1
  587. package/lib/components/table/src/table-layout.d.ts +4 -4
  588. package/lib/components/table/src/table-layout.js +8 -5
  589. package/lib/components/table/src/table-layout.js.map +1 -1
  590. package/lib/components/table/src/table.js +0 -2
  591. package/lib/components/table/src/table.js.map +1 -1
  592. package/lib/components/table/src/table.vue.d.ts +564 -48
  593. package/lib/components/table/src/util.d.ts +20 -20
  594. package/lib/components/table/src/util.js +15 -13
  595. package/lib/components/table/src/util.js.map +1 -1
  596. package/lib/components/teleport/index.js +2 -2
  597. package/lib/components/teleport/src/teleport.js +18 -8
  598. package/lib/components/teleport/src/teleport.js.map +1 -1
  599. package/lib/components/teleport/src/teleport2.js +8 -18
  600. package/lib/components/teleport/src/teleport2.js.map +1 -1
  601. package/lib/components/tooltip/src/content.js +1 -1
  602. package/lib/components/tooltip-v2/index.js +1 -1
  603. package/lib/components/tooltip-v2/src/content.js +48 -110
  604. package/lib/components/tooltip-v2/src/content.js.map +1 -1
  605. package/lib/components/tooltip-v2/src/content2.js +110 -48
  606. package/lib/components/tooltip-v2/src/content2.js.map +1 -1
  607. package/lib/components/tooltip-v2/src/tooltip.js +1 -1
  608. package/lib/components/tooltip-v2/src/tooltip2.js +2 -2
  609. package/lib/components/tour/src/tour.js +1 -1
  610. package/lib/index.d.ts +1158 -113
  611. package/lib/index.js +19 -19
  612. package/lib/version.d.ts +1 -1
  613. package/lib/version.js +1 -1
  614. package/lib/version.js.map +1 -1
  615. package/package.json +2 -2
  616. package/web-types.json +1 -1
@@ -52,6 +52,7 @@ function useStore() {
52
52
  }
53
53
  },
54
54
  insertColumn(states, column, parent, updateColumnOrder) {
55
+ var _a;
55
56
  const array = unref(states._columns);
56
57
  let newColumns = [];
57
58
  if (!parent) {
@@ -61,7 +62,7 @@ function useStore() {
61
62
  if (parent && !parent.children) {
62
63
  parent.children = [];
63
64
  }
64
- parent.children.push(column);
65
+ (_a = parent.children) == null ? void 0 : _a.push(column);
65
66
  newColumns = replaceColumn(array, parent);
66
67
  }
67
68
  sortColumn(newColumns);
@@ -87,12 +88,13 @@ function useStore() {
87
88
  }
88
89
  },
89
90
  removeColumn(states, column, parent, updateColumnOrder) {
91
+ var _a;
90
92
  const array = unref(states._columns) || [];
91
93
  if (parent) {
92
- parent.children.splice(parent.children.findIndex((item) => item.id === column.id), 1);
94
+ (_a = parent.children) == null ? void 0 : _a.splice(parent.children.findIndex((item) => item.id === column.id), 1);
93
95
  nextTick(() => {
94
- var _a;
95
- if (((_a = parent.children) == null ? void 0 : _a.length) === 0) {
96
+ var _a2;
97
+ if (((_a2 = parent.children) == null ? void 0 : _a2.length) === 0) {
96
98
  delete parent.children;
97
99
  }
98
100
  });
@@ -150,7 +152,8 @@ function useStore() {
150
152
  instance.store.updateTableScrollY();
151
153
  },
152
154
  toggleAllSelection() {
153
- instance.store.toggleAllSelection();
155
+ var _a, _b;
156
+ (_b = (_a = instance.store).toggleAllSelection) == null ? void 0 : _b.call(_a);
154
157
  },
155
158
  rowSelectedChanged(_states, row) {
156
159
  instance.store.toggleRowSelection(row);
@@ -166,7 +169,10 @@ function useStore() {
166
169
  const commit = function(name, ...args) {
167
170
  const mutations2 = instance.store.mutations;
168
171
  if (mutations2[name]) {
169
- mutations2[name].apply(instance, [instance.store.states].concat(args));
172
+ mutations2[name].apply(instance, [
173
+ instance.store.states,
174
+ ...args
175
+ ]);
170
176
  } else {
171
177
  throw new Error(`Action not found: ${name}`);
172
178
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../../packages/components/table/src/store/index.ts"],"sourcesContent":["// @ts-nocheck\nimport { getCurrentInstance, nextTick, unref } from 'vue'\nimport { isNull } from 'lodash-unified'\nimport { useNamespace } from '@element-plus/hooks'\nimport useWatcher from './watcher'\n\nimport type { Ref } from 'vue'\nimport type { TableColumnCtx } from '../table-column/defaults'\nimport type { Filter, Sort, Table } from '../table/defaults'\n\ninterface WatcherPropsData<T> {\n data: Ref<T[]>\n rowKey: Ref<string>\n}\n\nfunction replaceColumn<T>(\n array: TableColumnCtx<T>[],\n column: TableColumnCtx<T>\n) {\n return array.map((item) => {\n if (item.id === column.id) {\n return column\n } else if (item.children?.length) {\n item.children = replaceColumn(item.children, column)\n }\n return item\n })\n}\n\nfunction sortColumn<T>(array: TableColumnCtx<T>[]) {\n array.forEach((item) => {\n item.no = item.getColumnIndex?.()\n if (item.children?.length) {\n sortColumn(item.children)\n }\n })\n array.sort((cur, pre) => cur.no - pre.no)\n}\n\nfunction useStore<T>() {\n const instance = getCurrentInstance() as Table<T>\n const watcher = useWatcher<T>()\n const ns = useNamespace('table')\n type StoreStates = typeof watcher.states\n const mutations = {\n setData(states: StoreStates, data: T[]) {\n const dataInstanceChanged = unref(states._data) !== data\n states.data.value = data\n states._data.value = data\n instance.store.execQuery()\n // 数据变化,更新部分数据。\n // 没有使用 computed,而是手动更新部分数据 https://github.com/vuejs/vue/issues/6660#issuecomment-331417140\n instance.store.updateCurrentRowData()\n instance.store.updateExpandRows()\n instance.store.updateTreeData(\n instance.store.states.defaultExpandAll.value\n )\n if (unref(states.reserveSelection)) {\n instance.store.assertRowKey()\n } else {\n if (dataInstanceChanged) {\n instance.store.clearSelection()\n } else {\n instance.store.cleanSelection()\n }\n }\n instance.store.updateAllSelected()\n if (instance.$ready) {\n instance.store.scheduleLayout()\n }\n },\n\n insertColumn(\n states: StoreStates,\n column: TableColumnCtx<T>,\n parent: TableColumnCtx<T>,\n updateColumnOrder: () => void\n ) {\n const array = unref(states._columns)\n let newColumns = []\n if (!parent) {\n array.push(column)\n newColumns = array\n } else {\n if (parent && !parent.children) {\n parent.children = []\n }\n parent.children.push(column)\n newColumns = replaceColumn(array, parent)\n }\n sortColumn(newColumns)\n states._columns.value = newColumns\n states.updateOrderFns.push(updateColumnOrder)\n if (column.type === 'selection') {\n states.selectable.value = column.selectable\n states.reserveSelection.value = column.reserveSelection\n }\n if (instance.$ready) {\n instance.store.updateColumns() // hack for dynamics insert column\n instance.store.scheduleLayout()\n }\n },\n\n updateColumnOrder(states: StoreStates, column: TableColumnCtx<T>) {\n const newColumnIndex = column.getColumnIndex?.()\n if (newColumnIndex === column.no) return\n\n sortColumn(states._columns.value)\n\n if (instance.$ready) {\n instance.store.updateColumns()\n }\n },\n\n removeColumn(\n states: StoreStates,\n column: TableColumnCtx<T>,\n parent: TableColumnCtx<T>,\n updateColumnOrder: () => void\n ) {\n const array = unref(states._columns) || []\n if (parent) {\n parent.children.splice(\n parent.children.findIndex((item) => item.id === column.id),\n 1\n )\n // fix #10699, delete parent.children immediately will trigger again\n nextTick(() => {\n if (parent.children?.length === 0) {\n delete parent.children\n }\n })\n states._columns.value = replaceColumn(array, parent)\n } else {\n const index = array.indexOf(column)\n if (index > -1) {\n array.splice(index, 1)\n states._columns.value = array\n }\n }\n\n const updateFnIndex = states.updateOrderFns.indexOf(updateColumnOrder)\n updateFnIndex > -1 && states.updateOrderFns.splice(updateFnIndex, 1)\n\n if (instance.$ready) {\n instance.store.updateColumns() // hack for dynamics remove column\n instance.store.scheduleLayout()\n }\n },\n\n sort(states: StoreStates, options: Sort) {\n const { prop, order, init } = options\n if (prop) {\n const column = unref(states.columns).find(\n (column) => column.property === prop\n )\n if (column) {\n column.order = order\n instance.store.updateSort(column, prop, order)\n instance.store.commit('changeSortCondition', { init })\n }\n }\n },\n\n changeSortCondition(states: StoreStates, options: Sort) {\n // 修复 pr https://github.com/ElemeFE/element/pull/15012 导致的 bug\n // https://github.com/element-plus/element-plus/pull/4640\n const { sortingColumn, sortProp, sortOrder } = states\n const columnValue = unref(sortingColumn),\n propValue = unref(sortProp),\n orderValue = unref(sortOrder)\n if (isNull(orderValue)) {\n states.sortingColumn.value = null\n states.sortProp.value = null\n }\n const ignore = { filter: true }\n instance.store.execQuery(ignore)\n\n if (!options || !(options.silent || options.init)) {\n instance.emit('sort-change', {\n column: columnValue,\n prop: propValue,\n order: orderValue,\n })\n }\n\n instance.store.updateTableScrollY()\n },\n\n filterChange(_states: StoreStates, options: Filter<T>) {\n const { column, values, silent } = options\n const newFilters = instance.store.updateFilters(column, values)\n instance.store.execQuery()\n\n if (!silent) {\n instance.emit('filter-change', newFilters)\n }\n instance.store.updateTableScrollY()\n },\n\n toggleAllSelection() {\n instance.store.toggleAllSelection()\n },\n\n rowSelectedChanged(_states, row: T) {\n instance.store.toggleRowSelection(row)\n instance.store.updateAllSelected()\n },\n\n setHoverRow(states: StoreStates, row: T) {\n states.hoverRow.value = row\n },\n\n setCurrentRow(_states, row: T) {\n instance.store.updateCurrentRow(row)\n },\n }\n const commit = function (name: keyof typeof mutations, ...args) {\n const mutations = instance.store.mutations\n if (mutations[name]) {\n mutations[name].apply(instance, [instance.store.states].concat(args))\n } else {\n throw new Error(`Action not found: ${name}`)\n }\n }\n const updateTableScrollY = function () {\n nextTick(() => instance.layout.updateScrollY.apply(instance.layout))\n }\n return {\n ns,\n ...watcher,\n mutations,\n commit,\n updateTableScrollY,\n }\n}\n\nexport default useStore\n\nclass HelperStore<T> {\n Return = useStore<T>()\n}\n\ntype StoreFilter = Record<string, string[]>\ntype Store<T> = HelperStore<T>['Return']\nexport type { WatcherPropsData, Store, StoreFilter }\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../../packages/components/table/src/store/index.ts"],"sourcesContent":["import { getCurrentInstance, nextTick, unref } from 'vue'\nimport { isNull } from 'lodash-unified'\nimport { useNamespace } from '@element-plus/hooks'\nimport useWatcher from './watcher'\n\nimport type { Ref } from 'vue'\nimport type { TableColumnCtx } from '../table-column/defaults'\nimport type { DefaultRow, Filter, Sort, Table } from '../table/defaults'\n\ninterface WatcherPropsData<T extends DefaultRow> {\n data: Ref<T[]>\n rowKey: Ref<string | null>\n}\n\nfunction replaceColumn<T extends DefaultRow>(\n array: TableColumnCtx<T>[],\n column: TableColumnCtx<T>\n) {\n return array.map((item) => {\n if (item.id === column.id) {\n return column\n } else if (item.children?.length) {\n item.children = replaceColumn(item.children, column)\n }\n return item\n })\n}\n\nfunction sortColumn<T extends DefaultRow>(array: TableColumnCtx<T>[]) {\n array.forEach((item) => {\n item.no = item.getColumnIndex?.()\n if (item.children?.length) {\n sortColumn(item.children)\n }\n })\n array.sort((cur, pre) => cur.no - pre.no)\n}\n\nfunction useStore<T extends DefaultRow>() {\n const instance = getCurrentInstance() as Table<T>\n const watcher = useWatcher<T>()\n const ns = useNamespace('table')\n type StoreStates = typeof watcher.states\n const mutations = {\n setData(states: StoreStates, data: T[]) {\n const dataInstanceChanged = unref(states._data) !== data\n states.data.value = data\n states._data.value = data\n instance.store.execQuery()\n // 数据变化,更新部分数据。\n // 没有使用 computed,而是手动更新部分数据 https://github.com/vuejs/vue/issues/6660#issuecomment-331417140\n instance.store.updateCurrentRowData()\n instance.store.updateExpandRows()\n instance.store.updateTreeData(\n instance.store.states.defaultExpandAll.value\n )\n if (unref(states.reserveSelection)) {\n instance.store.assertRowKey()\n } else {\n if (dataInstanceChanged) {\n instance.store.clearSelection()\n } else {\n instance.store.cleanSelection()\n }\n }\n instance.store.updateAllSelected()\n if (instance.$ready) {\n instance.store.scheduleLayout()\n }\n },\n\n insertColumn(\n states: StoreStates,\n column: TableColumnCtx<T>,\n parent: TableColumnCtx<T>,\n updateColumnOrder: () => void\n ) {\n const array = unref(states._columns)\n let newColumns = []\n if (!parent) {\n array.push(column)\n newColumns = array\n } else {\n if (parent && !parent.children) {\n parent.children = []\n }\n parent.children?.push(column)\n newColumns = replaceColumn(array, parent)\n }\n sortColumn(newColumns)\n states._columns.value = newColumns\n states.updateOrderFns.push(updateColumnOrder)\n if (column.type === 'selection') {\n states.selectable.value = column.selectable\n states.reserveSelection.value = column.reserveSelection\n }\n if (instance.$ready) {\n instance.store.updateColumns() // hack for dynamics insert column\n instance.store.scheduleLayout()\n }\n },\n\n updateColumnOrder(states: StoreStates, column: TableColumnCtx<T>) {\n const newColumnIndex = column.getColumnIndex?.()\n if (newColumnIndex === column.no) return\n\n sortColumn(states._columns.value)\n\n if (instance.$ready) {\n instance.store.updateColumns()\n }\n },\n\n removeColumn(\n states: StoreStates,\n column: TableColumnCtx<T>,\n parent: TableColumnCtx<T>,\n updateColumnOrder: () => void\n ) {\n const array = unref(states._columns) || []\n if (parent) {\n parent.children?.splice(\n parent.children.findIndex((item) => item.id === column.id),\n 1\n )\n // fix #10699, delete parent.children immediately will trigger again\n nextTick(() => {\n if (parent.children?.length === 0) {\n delete parent.children\n }\n })\n states._columns.value = replaceColumn(array, parent)\n } else {\n const index = array.indexOf(column)\n if (index > -1) {\n array.splice(index, 1)\n states._columns.value = array\n }\n }\n\n const updateFnIndex = states.updateOrderFns.indexOf(updateColumnOrder)\n updateFnIndex > -1 && states.updateOrderFns.splice(updateFnIndex, 1)\n\n if (instance.$ready) {\n instance.store.updateColumns() // hack for dynamics remove column\n instance.store.scheduleLayout()\n }\n },\n\n sort(states: StoreStates, options: Sort) {\n const { prop, order, init } = options\n if (prop) {\n const column = unref(states.columns).find(\n (column) => column.property === prop\n )\n if (column) {\n column.order = order\n instance.store.updateSort(column, prop, order)\n instance.store.commit('changeSortCondition', { init })\n }\n }\n },\n\n changeSortCondition(states: StoreStates, options: Sort) {\n // 修复 pr https://github.com/ElemeFE/element/pull/15012 导致的 bug\n // https://github.com/element-plus/element-plus/pull/4640\n const { sortingColumn, sortProp, sortOrder } = states\n const columnValue = unref(sortingColumn),\n propValue = unref(sortProp),\n orderValue = unref(sortOrder)\n if (isNull(orderValue)) {\n states.sortingColumn.value = null\n states.sortProp.value = null\n }\n const ignore = { filter: true }\n instance.store.execQuery(ignore)\n\n if (!options || !(options.silent || options.init)) {\n instance.emit('sort-change', {\n column: columnValue,\n prop: propValue,\n order: orderValue,\n })\n }\n\n instance.store.updateTableScrollY()\n },\n\n filterChange(_states: StoreStates, options: Filter<T>) {\n const { column, values, silent } = options\n const newFilters = instance.store.updateFilters(column, values)\n instance.store.execQuery()\n\n if (!silent) {\n instance.emit('filter-change', newFilters)\n }\n instance.store.updateTableScrollY()\n },\n\n toggleAllSelection() {\n instance.store.toggleAllSelection?.()\n },\n\n rowSelectedChanged(_states: StoreStates, row: T) {\n instance.store.toggleRowSelection(row)\n instance.store.updateAllSelected()\n },\n\n setHoverRow(states: StoreStates, row: T) {\n states.hoverRow.value = row\n },\n\n setCurrentRow(_states: StoreStates, row: T) {\n instance.store.updateCurrentRow(row)\n },\n }\n const commit = function (name: keyof typeof mutations, ...args: any[]) {\n const mutations = instance.store.mutations\n if (mutations[name]) {\n ;(mutations[name] as any).apply(instance, [\n instance.store.states,\n ...args,\n ])\n } else {\n throw new Error(`Action not found: ${name}`)\n }\n }\n const updateTableScrollY = function () {\n nextTick(() => instance.layout.updateScrollY.apply(instance.layout))\n }\n return {\n ns,\n ...watcher,\n mutations,\n commit,\n updateTableScrollY,\n }\n}\n\nexport default useStore\n\nclass HelperStore<T extends DefaultRow> {\n Return = useStore<T>()\n}\n\ntype StoreFilter = Record<string, string[]>\ntype Store<T extends DefaultRow> = HelperStore<T>['Return']\nexport type { WatcherPropsData, Store, StoreFilter }\n"],"names":[],"mappings":"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"}
@@ -1,3 +1,27 @@
1
1
  import type { WatcherPropsData } from '.';
2
- declare function useTree<T>(watcherData: WatcherPropsData<T>): any;
2
+ import type { DefaultRow, TreeNode } from '../table/defaults';
3
+ export interface TreeData extends TreeNode {
4
+ children?: string[];
5
+ lazy?: boolean;
6
+ loaded?: boolean;
7
+ }
8
+ declare function useTree<T extends DefaultRow>(watcherData: WatcherPropsData<T>): {
9
+ loadData: (row: T, key: string, treeNode: TreeNode) => void;
10
+ loadOrToggle: (row: T) => void;
11
+ toggleTreeExpansion: (row: T, expanded?: boolean) => void;
12
+ updateTreeExpandKeys: (value: (string | number)[]) => void;
13
+ updateTreeData: (ifChangeExpandRowKeys?: boolean, ifExpandAll?: boolean) => void;
14
+ updateKeyChildren: (key: string, data: T[]) => void;
15
+ normalize: (data: T[]) => Map<string | number, TreeData>;
16
+ states: {
17
+ expandRowKeys: import("vue").Ref<(string | number)[]>;
18
+ treeData: import("vue").Ref<Record<string, TreeData>>;
19
+ indent: import("vue").Ref<number>;
20
+ lazy: import("vue").Ref<boolean>;
21
+ lazyTreeNodeMap: import("vue").Ref<Record<string, T[]>>;
22
+ lazyColumnIdentifier: import("vue").Ref<string>;
23
+ childrenColumnName: import("vue").Ref<string>;
24
+ checkStrictly: import("vue").Ref<boolean>;
25
+ };
26
+ };
3
27
  export default useTree;
@@ -60,8 +60,9 @@ function useTree(watcherData) {
60
60
  }, childrenColumnName.value, lazyColumnIdentifier.value, lazy.value);
61
61
  return res;
62
62
  };
63
- const updateTreeData = (ifChangeExpandRowKeys = false, ifExpandAll = ((_a) => (_a = instance.store) == null ? void 0 : _a.states.defaultExpandAll.value)()) => {
64
- var _a2;
63
+ const updateTreeData = (ifChangeExpandRowKeys = false, ifExpandAll) => {
64
+ var _a, _b;
65
+ ifExpandAll || (ifExpandAll = (_a = instance.store) == null ? void 0 : _a.states.defaultExpandAll.value);
65
66
  const nested = normalizedData.value;
66
67
  const normalizedLazyNode_ = normalizedLazyNode.value;
67
68
  const newTreeData = {};
@@ -95,10 +96,11 @@ function useTree(watcherData) {
95
96
  const lazyKeys = Object.keys(normalizedLazyNode_);
96
97
  if (lazy.value && lazyKeys.length && rootLazyRowKeys.length) {
97
98
  lazyKeys.forEach((key) => {
99
+ var _a2;
98
100
  const oldValue = oldTreeData[key];
99
101
  const lazyNodeChildren = normalizedLazyNode_[key].children;
100
102
  if (rootLazyRowKeys.includes(key)) {
101
- if (newTreeData[key].children.length !== 0) {
103
+ if (((_a2 = newTreeData[key].children) == null ? void 0 : _a2.length) !== 0) {
102
104
  throw new Error("[ElTable]children must be an empty array.");
103
105
  }
104
106
  newTreeData[key].children = lazyNodeChildren;
@@ -110,14 +112,14 @@ function useTree(watcherData) {
110
112
  loading: !!loading,
111
113
  expanded: getExpanded(oldValue, key),
112
114
  children: lazyNodeChildren,
113
- level: ""
115
+ level: void 0
114
116
  };
115
117
  }
116
118
  });
117
119
  }
118
120
  }
119
121
  treeData.value = newTreeData;
120
- (_a2 = instance.store) == null ? void 0 : _a2.updateTableScrollY();
122
+ (_b = instance.store) == null ? void 0 : _b.updateTableScrollY();
121
123
  };
122
124
  watch(() => expandRowKeys.value, () => {
123
125
  updateTreeData(true);
@@ -1 +1 @@
1
- {"version":3,"file":"tree.mjs","sources":["../../../../../../../packages/components/table/src/store/tree.ts"],"sourcesContent":["// @ts-nocheck\nimport { computed, getCurrentInstance, ref, unref, watch } from 'vue'\nimport { isArray, isUndefined } from '@element-plus/utils'\nimport { getRowIdentity, walkTreeNode } from '../util'\n\nimport type { WatcherPropsData } from '.'\nimport type { Table, TableProps } from '../table/defaults'\n\nfunction useTree<T>(watcherData: WatcherPropsData<T>) {\n const expandRowKeys = ref<Array<string | number>>([])\n const treeData = ref<unknown>({})\n const indent = ref(16)\n const lazy = ref(false)\n const lazyTreeNodeMap = ref({})\n const lazyColumnIdentifier = ref('hasChildren')\n const childrenColumnName = ref('children')\n const checkStrictly = ref(false)\n const instance = getCurrentInstance() as Table<T>\n const normalizedData = computed(() => {\n if (!watcherData.rowKey.value) return {}\n const data = watcherData.data.value || []\n return normalize(data)\n })\n const normalizedLazyNode = computed(() => {\n const rowKey = watcherData.rowKey.value\n const keys = Object.keys(lazyTreeNodeMap.value)\n const res = {}\n if (!keys.length) return res\n keys.forEach((key) => {\n if (lazyTreeNodeMap.value[key].length) {\n const item = { children: [] }\n lazyTreeNodeMap.value[key].forEach((row) => {\n const currentRowKey = getRowIdentity(row, rowKey)\n item.children.push(currentRowKey)\n if (row[lazyColumnIdentifier.value] && !res[currentRowKey]) {\n res[currentRowKey] = { children: [] }\n }\n })\n res[key] = item\n }\n })\n return res\n })\n\n const normalize = (data) => {\n const rowKey = watcherData.rowKey.value\n const res = new Map<string | number, object>() // 使用 Map 替代 Object,解决 number key 的问题\n walkTreeNode(\n data,\n (parent, children, level) => {\n const parentId = getRowIdentity(parent, rowKey, true)\n if (isArray(children)) {\n res.set(parentId, {\n children: children.map((row) => row[rowKey]),\n level,\n })\n } else if (lazy.value) {\n // 当 children 不存在且 lazy 为 true,该节点即为懒加载的节点\n res.set(parentId, {\n children: [],\n lazy: true,\n level,\n })\n }\n },\n childrenColumnName.value,\n lazyColumnIdentifier.value,\n lazy.value\n )\n return res\n }\n\n const updateTreeData = (\n ifChangeExpandRowKeys = false,\n ifExpandAll = instance.store?.states.defaultExpandAll.value\n ) => {\n const nested = normalizedData.value\n const normalizedLazyNode_ = normalizedLazyNode.value\n const newTreeData = {}\n if (nested instanceof Map && nested.size) {\n const oldTreeData = unref(treeData)\n const rootLazyRowKeys = []\n const getExpanded = (oldValue, key) => {\n if (ifChangeExpandRowKeys) {\n if (expandRowKeys.value) {\n return ifExpandAll || expandRowKeys.value.includes(key)\n } else {\n return !!(ifExpandAll || oldValue?.expanded)\n }\n } else {\n const included =\n ifExpandAll ||\n (expandRowKeys.value && expandRowKeys.value.includes(key))\n return !!(oldValue?.expanded || included)\n }\n }\n // 合并 expanded 与 display,确保数据刷新后,状态不变\n nested.forEach((_, key) => {\n const oldValue = oldTreeData[key]\n const newValue = { ...nested.get(key) }\n newValue.expanded = getExpanded(oldValue, key)\n if (newValue.lazy) {\n const { loaded = false, loading = false } = oldValue || {}\n newValue.loaded = !!loaded\n newValue.loading = !!loading\n rootLazyRowKeys.push(key)\n }\n newTreeData[key] = newValue\n })\n // 根据懒加载数据更新 treeData\n const lazyKeys = Object.keys(normalizedLazyNode_)\n if (lazy.value && lazyKeys.length && rootLazyRowKeys.length) {\n lazyKeys.forEach((key) => {\n const oldValue = oldTreeData[key]\n const lazyNodeChildren = normalizedLazyNode_[key].children\n if (rootLazyRowKeys.includes(key)) {\n // 懒加载的 root 节点,更新一下原有的数据,原来的 children 一定是空数组\n if (newTreeData[key].children.length !== 0) {\n throw new Error('[ElTable]children must be an empty array.')\n }\n newTreeData[key].children = lazyNodeChildren\n } else {\n const { loaded = false, loading = false } = oldValue || {}\n newTreeData[key] = {\n lazy: true,\n loaded: !!loaded,\n loading: !!loading,\n expanded: getExpanded(oldValue, key),\n children: lazyNodeChildren,\n level: '',\n }\n }\n })\n }\n }\n treeData.value = newTreeData\n instance.store?.updateTableScrollY()\n }\n\n watch(\n () => expandRowKeys.value,\n () => {\n updateTreeData(true)\n }\n )\n\n watch(\n () => normalizedData.value,\n () => {\n updateTreeData()\n }\n )\n watch(\n () => normalizedLazyNode.value,\n () => {\n updateTreeData()\n }\n )\n\n const updateTreeExpandKeys = (value: string[]) => {\n expandRowKeys.value = value\n updateTreeData()\n }\n const isUseLazy = (data): boolean => {\n return lazy.value && data && 'loaded' in data && !data.loaded\n }\n const toggleTreeExpansion = (row: T, expanded?: boolean) => {\n instance.store.assertRowKey()\n\n const rowKey = watcherData.rowKey.value\n const id = getRowIdentity(row, rowKey)\n const data = id && treeData.value[id]\n if (id && data && 'expanded' in data) {\n const oldExpanded = data.expanded\n expanded = isUndefined(expanded) ? !data.expanded : expanded\n treeData.value[id].expanded = expanded\n if (oldExpanded !== expanded) {\n instance.emit('expand-change', row, expanded)\n }\n isUseLazy(data) && loadData(row, id, data)\n instance.store.updateTableScrollY()\n }\n }\n\n const loadOrToggle = (row) => {\n instance.store.assertRowKey()\n const rowKey = watcherData.rowKey.value\n const id = getRowIdentity(row, rowKey)\n const data = treeData.value[id]\n if (isUseLazy(data)) {\n loadData(row, id, data)\n } else {\n toggleTreeExpansion(row, undefined)\n }\n }\n\n const loadData = (row: T, key: string, treeNode) => {\n const { load } = instance.props as unknown as TableProps<T>\n if (load && !treeData.value[key].loaded) {\n treeData.value[key].loading = true\n load(row, treeNode, (data) => {\n if (!isArray(data)) {\n throw new TypeError('[ElTable] data must be an array')\n }\n treeData.value[key].loading = false\n treeData.value[key].loaded = true\n treeData.value[key].expanded = true\n if (data.length) {\n lazyTreeNodeMap.value[key] = data\n }\n instance.emit('expand-change', row, true)\n })\n }\n }\n\n const updateKeyChildren = (key: string, data: T[]) => {\n const { lazy, rowKey } = instance.props as unknown as TableProps<T>\n if (!lazy) return\n if (!rowKey) throw new Error('[Table] rowKey is required in updateKeyChild')\n\n if (lazyTreeNodeMap.value[key]) {\n lazyTreeNodeMap.value[key] = data\n }\n }\n\n return {\n loadData,\n loadOrToggle,\n toggleTreeExpansion,\n updateTreeExpandKeys,\n updateTreeData,\n updateKeyChildren,\n normalize,\n states: {\n expandRowKeys,\n treeData,\n indent,\n lazy,\n lazyTreeNodeMap,\n lazyColumnIdentifier,\n childrenColumnName,\n checkStrictly,\n },\n }\n}\n\nexport default useTree\n"],"names":[],"mappings":";;;;;AAGA,SAAS,OAAO,CAAC,WAAW,EAAE;AAC9B,EAAE,MAAM,aAAa,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;AAChC,EAAE,MAAM,QAAQ,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;AAC3B,EAAE,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;AACzB,EAAE,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC1B,EAAE,MAAM,eAAe,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;AAClC,EAAE,MAAM,oBAAoB,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC;AAClD,EAAE,MAAM,kBAAkB,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC;AAC7C,EAAE,MAAM,aAAa,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AACnC,EAAE,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;AACxC,EAAE,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM;AACxC,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK;AACjC,MAAM,OAAO,EAAE,CAAC;AAChB,IAAI,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;AAC9C,IAAI,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;AAC3B,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM;AAC5C,IAAI,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;AAC5C,IAAI,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AACpD,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;AACnB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM;AACpB,MAAM,OAAO,GAAG,CAAC;AACjB,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK;AAC1B,MAAM,IAAI,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE;AAC7C,QAAQ,MAAM,IAAI,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACtC,QAAQ,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK;AACpD,UAAU,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC5D,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAC5C,UAAU,IAAI,GAAG,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;AACtE,YAAY,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAClD,WAAW;AACX,SAAS,CAAC,CAAC;AACX,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;AACxB,OAAO;AACP,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,GAAG,CAAC;AACf,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,SAAS,GAAG,CAAC,IAAI,KAAK;AAC9B,IAAI,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;AAC5C,IAAI,MAAM,GAAG,mBAAmB,IAAI,GAAG,EAAE,CAAC;AAC1C,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,KAAK;AACpD,MAAM,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AAC5D,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE;AAC7B,QAAQ,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE;AAC1B,UAAU,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC;AACtD,UAAU,KAAK;AACf,SAAS,CAAC,CAAC;AACX,OAAO,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE;AAC7B,QAAQ,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE;AAC1B,UAAU,QAAQ,EAAE,EAAE;AACtB,UAAU,IAAI,EAAE,IAAI;AACpB,UAAU,KAAK;AACf,SAAS,CAAC,CAAC;AACX,OAAO;AACP,KAAK,EAAE,kBAAkB,CAAC,KAAK,EAAE,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACzE,IAAI,OAAO,GAAG,CAAC;AACf,GAAG,CAAC;AACJ,EAAE,MAAM,cAAc,GAAG,CAAC,qBAAqB,GAAG,KAAK,EAAE,WAAW,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,GAAG,KAAK;AACjK,IAAI,IAAI,GAAG,CAAC;AACZ,IAAI,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC;AACxC,IAAI,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,KAAK,CAAC;AACzD,IAAI,MAAM,WAAW,GAAG,EAAE,CAAC;AAC3B,IAAI,IAAI,MAAM,YAAY,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE;AAC9C,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;AAC1C,MAAM,MAAM,eAAe,GAAG,EAAE,CAAC;AACjC,MAAM,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,GAAG,KAAK;AAC7C,QAAQ,IAAI,qBAAqB,EAAE;AACnC,UAAU,IAAI,aAAa,CAAC,KAAK,EAAE;AACnC,YAAY,OAAO,WAAW,IAAI,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACpE,WAAW,MAAM;AACjB,YAAY,OAAO,CAAC,EAAE,WAAW,KAAK,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AACtF,WAAW;AACX,SAAS,MAAM;AACf,UAAU,MAAM,QAAQ,GAAG,WAAW,IAAI,aAAa,CAAC,KAAK,IAAI,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACnG,UAAU,OAAO,CAAC,EAAE,CAAC,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;AACjF,SAAS;AACT,OAAO,CAAC;AACR,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK;AACjC,QAAQ,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;AAC1C,QAAQ,MAAM,QAAQ,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;AAChD,QAAQ,QAAQ,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AACvD,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE;AAC3B,UAAU,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,QAAQ,IAAI,EAAE,CAAC;AACrE,UAAU,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;AACrC,UAAU,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;AACvC,UAAU,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpC,SAAS;AACT,QAAQ,WAAW,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;AACpC,OAAO,CAAC,CAAC;AACT,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AACxD,MAAM,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,EAAE;AACnE,QAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK;AAClC,UAAU,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;AAC5C,UAAU,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;AACrE,UAAU,IAAI,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AAC7C,YAAY,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;AACxD,cAAc,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;AAC3E,aAAa;AACb,YAAY,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,gBAAgB,CAAC;AACzD,WAAW,MAAM;AACjB,YAAY,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,QAAQ,IAAI,EAAE,CAAC;AACvE,YAAY,WAAW,CAAC,GAAG,CAAC,GAAG;AAC/B,cAAc,IAAI,EAAE,IAAI;AACxB,cAAc,MAAM,EAAE,CAAC,CAAC,MAAM;AAC9B,cAAc,OAAO,EAAE,CAAC,CAAC,OAAO;AAChC,cAAc,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC;AAClD,cAAc,QAAQ,EAAE,gBAAgB;AACxC,cAAc,KAAK,EAAE,EAAE;AACvB,aAAa,CAAC;AACd,WAAW;AACX,SAAS,CAAC,CAAC;AACX,OAAO;AACP,KAAK;AACL,IAAI,QAAQ,CAAC,KAAK,GAAG,WAAW,CAAC;AACjC,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,kBAAkB,EAAE,CAAC;AACvE,GAAG,CAAC;AACJ,EAAE,KAAK,CAAC,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM;AACzC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;AACzB,GAAG,CAAC,CAAC;AACL,EAAE,KAAK,CAAC,MAAM,cAAc,CAAC,KAAK,EAAE,MAAM;AAC1C,IAAI,cAAc,EAAE,CAAC;AACrB,GAAG,CAAC,CAAC;AACL,EAAE,KAAK,CAAC,MAAM,kBAAkB,CAAC,KAAK,EAAE,MAAM;AAC9C,IAAI,cAAc,EAAE,CAAC;AACrB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,oBAAoB,GAAG,CAAC,KAAK,KAAK;AAC1C,IAAI,aAAa,CAAC,KAAK,GAAG,KAAK,CAAC;AAChC,IAAI,cAAc,EAAE,CAAC;AACrB,GAAG,CAAC;AACJ,EAAE,MAAM,SAAS,GAAG,CAAC,IAAI,KAAK;AAC9B,IAAI,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;AAClE,GAAG,CAAC;AACJ,EAAE,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,QAAQ,KAAK;AACjD,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;AAClC,IAAI,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;AAC5C,IAAI,MAAM,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC3C,IAAI,MAAM,IAAI,GAAG,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAC1C,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,UAAU,IAAI,IAAI,EAAE;AAC1C,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC;AACxC,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACnE,MAAM,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC7C,MAAM,IAAI,WAAW,KAAK,QAAQ,EAAE;AACpC,QAAQ,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;AACtD,OAAO;AACP,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;AACjD,MAAM,QAAQ,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;AAC1C,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,CAAC,GAAG,KAAK;AAChC,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;AAClC,IAAI,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;AAC5C,IAAI,MAAM,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC3C,IAAI,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AACpC,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;AACzB,MAAM,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;AAC9B,KAAK,MAAM;AACX,MAAM,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AACvC,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,KAAK;AAC3C,IAAI,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC;AACpC,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE;AAC7C,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;AACzC,MAAM,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,IAAI,KAAK;AACpC,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AAC5B,UAAU,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;AACjE,SAAS;AACT,QAAQ,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC;AAC5C,QAAQ,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;AAC1C,QAAQ,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;AAC5C,QAAQ,IAAI,IAAI,CAAC,MAAM,EAAE;AACzB,UAAU,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;AAC5C,SAAS;AACT,QAAQ,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AAClD,OAAO,CAAC,CAAC;AACT,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,IAAI,KAAK;AAC3C,IAAI,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC;AACnD,IAAI,IAAI,CAAC,KAAK;AACd,MAAM,OAAO;AACb,IAAI,IAAI,CAAC,MAAM;AACf,MAAM,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;AACtE,IAAI,IAAI,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AACpC,MAAM,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;AACxC,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,OAAO;AACT,IAAI,QAAQ;AACZ,IAAI,YAAY;AAChB,IAAI,mBAAmB;AACvB,IAAI,oBAAoB;AACxB,IAAI,cAAc;AAClB,IAAI,iBAAiB;AACrB,IAAI,SAAS;AACb,IAAI,MAAM,EAAE;AACZ,MAAM,aAAa;AACnB,MAAM,QAAQ;AACd,MAAM,MAAM;AACZ,MAAM,IAAI;AACV,MAAM,eAAe;AACrB,MAAM,oBAAoB;AAC1B,MAAM,kBAAkB;AACxB,MAAM,aAAa;AACnB,KAAK;AACL,GAAG,CAAC;AACJ;;;;"}
1
+ {"version":3,"file":"tree.mjs","sources":["../../../../../../../packages/components/table/src/store/tree.ts"],"sourcesContent":["import { computed, getCurrentInstance, ref, unref, watch } from 'vue'\nimport { isArray, isUndefined } from '@element-plus/utils'\nimport { getRowIdentity, walkTreeNode } from '../util'\n\nimport type { WatcherPropsData } from '.'\nimport type { DefaultRow, Table, TableProps, TreeNode } from '../table/defaults'\n\nexport interface TreeData extends TreeNode {\n children?: string[]\n lazy?: boolean\n loaded?: boolean\n}\n\nfunction useTree<T extends DefaultRow>(watcherData: WatcherPropsData<T>) {\n const expandRowKeys = ref<Array<string | number>>([])\n const treeData = ref<Record<string, TreeData>>({})\n const indent = ref(16)\n const lazy = ref(false)\n const lazyTreeNodeMap = ref<Record<string, T[]>>({})\n const lazyColumnIdentifier = ref('hasChildren')\n const childrenColumnName = ref('children')\n const checkStrictly = ref(false)\n const instance = getCurrentInstance() as Table<T>\n const normalizedData = computed(() => {\n if (!watcherData.rowKey.value) return {}\n const data = watcherData.data.value || []\n return normalize(data)\n })\n const normalizedLazyNode = computed(() => {\n const rowKey = watcherData.rowKey.value\n const keys = Object.keys(lazyTreeNodeMap.value)\n const res: Record<string, { children: string[] }> = {}\n if (!keys.length) return res\n keys.forEach((key) => {\n if (lazyTreeNodeMap.value[key].length) {\n const item: typeof res[number] = { children: [] }\n lazyTreeNodeMap.value[key].forEach((row) => {\n const currentRowKey = getRowIdentity(row, rowKey)\n item.children.push(currentRowKey)\n if (row[lazyColumnIdentifier.value] && !res[currentRowKey]) {\n res[currentRowKey] = { children: [] }\n }\n })\n res[key] = item\n }\n })\n return res\n })\n\n const normalize = (data: T[]) => {\n const rowKey = watcherData.rowKey.value\n const res = new Map<string | number, TreeData>() // 使用 Map 替代 Object,解决 number key 的问题\n walkTreeNode(\n data,\n (parent, children, level) => {\n const parentId = getRowIdentity(parent, rowKey, true)\n if (isArray(children)) {\n res.set(parentId, {\n children: children.map((row) => row[rowKey!]),\n level,\n })\n } else if (lazy.value) {\n // 当 children 不存在且 lazy 为 true,该节点即为懒加载的节点\n res.set(parentId, {\n children: [],\n lazy: true,\n level,\n })\n }\n },\n childrenColumnName.value,\n lazyColumnIdentifier.value,\n lazy.value\n )\n return res\n }\n\n const updateTreeData = (\n ifChangeExpandRowKeys = false,\n ifExpandAll?: boolean\n ) => {\n ifExpandAll ||= instance.store?.states.defaultExpandAll.value\n const nested = normalizedData.value\n const normalizedLazyNode_ = normalizedLazyNode.value\n const newTreeData: Record<string, TreeData> = {}\n if (nested instanceof Map && nested.size) {\n const oldTreeData = unref(treeData)\n const rootLazyRowKeys: string[] = []\n const getExpanded = (oldValue: TreeData, key: string) => {\n if (ifChangeExpandRowKeys) {\n if (expandRowKeys.value) {\n return ifExpandAll || expandRowKeys.value.includes(key)\n } else {\n return !!(ifExpandAll || oldValue?.expanded)\n }\n } else {\n const included =\n ifExpandAll ||\n (expandRowKeys.value && expandRowKeys.value.includes(key))\n return !!(oldValue?.expanded || included)\n }\n }\n // 合并 expanded 与 display,确保数据刷新后,状态不变\n nested.forEach((_, key) => {\n const oldValue = oldTreeData[key]\n const newValue = { ...nested.get(key) }\n newValue.expanded = getExpanded(oldValue, key)\n if (newValue.lazy) {\n const { loaded = false, loading = false } = oldValue || {}\n newValue.loaded = !!loaded\n newValue.loading = !!loading\n rootLazyRowKeys.push(key)\n }\n newTreeData[key] = newValue\n })\n // 根据懒加载数据更新 treeData\n const lazyKeys = Object.keys(normalizedLazyNode_)\n if (lazy.value && lazyKeys.length && rootLazyRowKeys.length) {\n lazyKeys.forEach((key) => {\n const oldValue = oldTreeData[key]\n const lazyNodeChildren = normalizedLazyNode_[key].children\n if (rootLazyRowKeys.includes(key)) {\n // 懒加载的 root 节点,更新一下原有的数据,原来的 children 一定是空数组\n if (newTreeData[key].children?.length !== 0) {\n throw new Error('[ElTable]children must be an empty array.')\n }\n newTreeData[key].children = lazyNodeChildren\n } else {\n const { loaded = false, loading = false } = oldValue || {}\n newTreeData[key] = {\n lazy: true,\n loaded: !!loaded,\n loading: !!loading,\n expanded: getExpanded(oldValue, key),\n children: lazyNodeChildren,\n level: undefined,\n }\n }\n })\n }\n }\n treeData.value = newTreeData\n instance.store?.updateTableScrollY()\n }\n\n watch(\n () => expandRowKeys.value,\n () => {\n updateTreeData(true)\n }\n )\n\n watch(\n () => normalizedData.value,\n () => {\n updateTreeData()\n }\n )\n watch(\n () => normalizedLazyNode.value,\n () => {\n updateTreeData()\n }\n )\n\n const updateTreeExpandKeys = (value: (string | number)[]) => {\n expandRowKeys.value = value\n updateTreeData()\n }\n const isUseLazy = (data: TreeData) => {\n return lazy.value && data && 'loaded' in data && !data.loaded\n }\n const toggleTreeExpansion = (row: T, expanded?: boolean) => {\n instance.store.assertRowKey()\n\n const rowKey = watcherData.rowKey.value\n const id = getRowIdentity(row, rowKey)\n const data = id && treeData.value[id]\n if (id && data && 'expanded' in data) {\n const oldExpanded = data.expanded\n expanded = isUndefined(expanded) ? !data.expanded : expanded\n treeData.value[id].expanded = expanded\n if (oldExpanded !== expanded) {\n instance.emit('expand-change', row, expanded)\n }\n isUseLazy(data) && loadData(row, id, data)\n instance.store.updateTableScrollY()\n }\n }\n\n const loadOrToggle = (row: T) => {\n instance.store.assertRowKey()\n const rowKey = watcherData.rowKey.value\n const id = getRowIdentity(row, rowKey)\n const data = treeData.value[id]\n if (isUseLazy(data)) {\n loadData(row, id, data)\n } else {\n toggleTreeExpansion(row, undefined)\n }\n }\n\n const loadData = (row: T, key: string, treeNode: TreeNode) => {\n const { load } = instance.props as unknown as TableProps<T>\n if (load && !treeData.value[key].loaded) {\n treeData.value[key].loading = true\n load(row, treeNode, (data) => {\n if (!isArray(data)) {\n throw new TypeError('[ElTable] data must be an array')\n }\n treeData.value[key].loading = false\n treeData.value[key].loaded = true\n treeData.value[key].expanded = true\n if (data.length) {\n lazyTreeNodeMap.value[key] = data\n }\n instance.emit('expand-change', row, true)\n })\n }\n }\n\n const updateKeyChildren = (key: string, data: T[]) => {\n const { lazy, rowKey } = instance.props as unknown as TableProps<T>\n if (!lazy) return\n if (!rowKey) throw new Error('[Table] rowKey is required in updateKeyChild')\n\n if (lazyTreeNodeMap.value[key]) {\n lazyTreeNodeMap.value[key] = data\n }\n }\n\n return {\n loadData,\n loadOrToggle,\n toggleTreeExpansion,\n updateTreeExpandKeys,\n updateTreeData,\n updateKeyChildren,\n normalize,\n states: {\n expandRowKeys,\n treeData,\n indent,\n lazy,\n lazyTreeNodeMap,\n lazyColumnIdentifier,\n childrenColumnName,\n checkStrictly,\n },\n }\n}\n\nexport default useTree\n"],"names":[],"mappings":"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"}
@@ -1,2 +1,80 @@
1
- declare function useWatcher<T>(): any;
1
+ import type { Ref } from 'vue';
2
+ import type { TableColumnCtx } from '../table-column/defaults';
3
+ import type { DefaultRow, TableSortOrder } from '../table/defaults';
4
+ import type { StoreFilter } from '.';
5
+ declare function useWatcher<T extends DefaultRow>(): {
6
+ assertRowKey: () => void;
7
+ updateColumns: () => void;
8
+ scheduleLayout: (needUpdateColumns?: boolean, immediate?: boolean) => void;
9
+ isSelected: (row: T) => boolean;
10
+ clearSelection: () => void;
11
+ cleanSelection: () => void;
12
+ getSelectionRows: () => T[];
13
+ toggleRowSelection: (row: T, selected?: boolean, emitChange?: boolean, ignoreSelectable?: boolean) => void;
14
+ _toggleAllSelection: () => void;
15
+ toggleAllSelection: (() => void) | null;
16
+ updateAllSelected: () => void;
17
+ updateFilters: (column: TableColumnCtx<T>, values: string[]) => Record<string, string[]>;
18
+ updateCurrentRow: (_currentRow: T) => void;
19
+ updateSort: (column: TableColumnCtx<T> | null, prop: string | null, order: TableSortOrder | null) => void;
20
+ execFilter: () => void;
21
+ execSort: () => void;
22
+ execQuery: (ignore?: {
23
+ filter: boolean;
24
+ } | undefined) => void;
25
+ clearFilter: (columnKeys?: string[] | string) => void;
26
+ clearSort: () => void;
27
+ toggleRowExpansion: (row: T, expanded?: boolean) => void;
28
+ setExpandRowKeysAdapter: (val: (string | number)[]) => void;
29
+ setCurrentRowKey: (key: string) => void;
30
+ toggleRowExpansionAdapter: (row: T, expanded?: boolean) => void;
31
+ isRowExpanded: (row: T) => boolean;
32
+ updateExpandRows: () => void;
33
+ updateCurrentRowData: () => void;
34
+ loadOrToggle: (row: T) => void;
35
+ updateTreeData: (ifChangeExpandRowKeys?: boolean, ifExpandAll?: boolean) => void;
36
+ updateKeyChildren: (key: string, data: T[]) => void;
37
+ states: {
38
+ _currentRowKey: Ref<string>;
39
+ currentRow: Ref<T>;
40
+ expandRowKeys: Ref<(string | number)[]>;
41
+ treeData: Ref<Record<string, import("./tree").TreeData>>;
42
+ indent: Ref<number>;
43
+ lazy: Ref<boolean>;
44
+ lazyTreeNodeMap: Ref<Record<string, T[]>>;
45
+ lazyColumnIdentifier: Ref<string>;
46
+ childrenColumnName: Ref<string>;
47
+ checkStrictly: Ref<boolean>;
48
+ expandRows: Ref<T[]>;
49
+ defaultExpandAll: Ref<boolean>;
50
+ tableSize: Ref<any>;
51
+ rowKey: Ref<string | null>;
52
+ data: Ref<T[]>;
53
+ _data: Ref<T[]>;
54
+ isComplex: Ref<boolean>;
55
+ _columns: Ref<TableColumnCtx<T>[]>;
56
+ originColumns: Ref<TableColumnCtx<T>[]>;
57
+ columns: Ref<TableColumnCtx<T>[]>;
58
+ fixedColumns: Ref<TableColumnCtx<T>[]>;
59
+ rightFixedColumns: Ref<TableColumnCtx<T>[]>;
60
+ leafColumns: Ref<TableColumnCtx<T>[]>;
61
+ fixedLeafColumns: Ref<TableColumnCtx<T>[]>;
62
+ rightFixedLeafColumns: Ref<TableColumnCtx<T>[]>;
63
+ updateOrderFns: (() => void)[];
64
+ leafColumnsLength: Ref<number>;
65
+ fixedLeafColumnsLength: Ref<number>;
66
+ rightFixedLeafColumnsLength: Ref<number>;
67
+ isAllSelected: Ref<boolean>;
68
+ selection: Ref<T[]>;
69
+ reserveSelection: Ref<boolean>;
70
+ selectOnIndeterminate: Ref<boolean>;
71
+ selectable: Ref<((row: T, index: number) => boolean) | null>;
72
+ filters: Ref<StoreFilter>;
73
+ filteredData: Ref<T[] | null>;
74
+ sortingColumn: Ref<TableColumnCtx<T> | null>;
75
+ sortProp: Ref<string | null>;
76
+ sortOrder: Ref<string | number | null>;
77
+ hoverRow: Ref<T | null>;
78
+ };
79
+ };
2
80
  export default useWatcher;
@@ -3,7 +3,8 @@ import { getKeysMap, getRowIdentity, toggleRowStatus, getColumnById, getColumnBy
3
3
  import useExpand from './expand.mjs';
4
4
  import useCurrent from './current.mjs';
5
5
  import useTree from './tree.mjs';
6
- import { hasOwn, isArray, isString } from '@vue/shared';
6
+ import { hasOwn, isString, isArray } from '@vue/shared';
7
+ import { castArray } from 'lodash-unified';
7
8
 
8
9
  const sortData = (data, states) => {
9
10
  const sortingColumn = states.sortingColumn;
@@ -96,14 +97,14 @@ function useWatcher() {
96
97
  }
97
98
  rightFixedColumns.value = _columns.value.filter((column) => column.fixed === "right");
98
99
  const notFixedColumns = _columns.value.filter((column) => (selectColFixLeft ? column.type !== "selection" : true) && !column.fixed);
99
- originColumns.value = [].concat(fixedColumns.value).concat(notFixedColumns).concat(rightFixedColumns.value);
100
+ originColumns.value = Array.from(fixedColumns.value).concat(notFixedColumns).concat(rightFixedColumns.value);
100
101
  const leafColumns2 = doFlattenColumns(notFixedColumns);
101
102
  const fixedLeafColumns2 = doFlattenColumns(fixedColumns.value);
102
103
  const rightFixedLeafColumns2 = doFlattenColumns(rightFixedColumns.value);
103
104
  leafColumnsLength.value = leafColumns2.length;
104
105
  fixedLeafColumnsLength.value = fixedLeafColumns2.length;
105
106
  rightFixedLeafColumnsLength.value = rightFixedLeafColumns2.length;
106
- columns.value = [].concat(fixedLeafColumns2).concat(leafColumns2).concat(rightFixedLeafColumns2);
107
+ columns.value = Array.from(fixedLeafColumns2).concat(leafColumns2).concat(rightFixedLeafColumns2);
107
108
  isComplex.value = fixedColumns.value.length > 0 || rightFixedColumns.value.length > 0;
108
109
  };
109
110
  const scheduleLayout = (needUpdateColumns, immediate = false) => {
@@ -239,12 +240,9 @@ function useWatcher() {
239
240
  }
240
241
  return count;
241
242
  };
242
- const updateFilters = (columns2, values) => {
243
- if (!isArray(columns2)) {
244
- columns2 = [columns2];
245
- }
243
+ const updateFilters = (column, values) => {
246
244
  const filters_ = {};
247
- columns2.forEach((col) => {
245
+ castArray(column).forEach((col) => {
248
246
  filters.value[col.id] = values;
249
247
  filters_[col.columnKey || col.id] = values;
250
248
  });
@@ -276,14 +274,15 @@ function useWatcher() {
276
274
  filteredData.value = sourceData;
277
275
  };
278
276
  const execSort = () => {
279
- data.value = sortData(filteredData.value, {
277
+ var _a2;
278
+ data.value = sortData((_a2 = filteredData.value) != null ? _a2 : [], {
280
279
  sortingColumn: sortingColumn.value,
281
280
  sortProp: sortProp.value,
282
281
  sortOrder: sortOrder.value
283
282
  });
284
283
  };
285
284
  const execQuery = (ignore = void 0) => {
286
- if (!(ignore && ignore.filter)) {
285
+ if (!(ignore == null ? void 0 : ignore.filter)) {
287
286
  execFilter();
288
287
  }
289
288
  execSort();
@@ -1 +1 @@
1
- {"version":3,"file":"watcher.mjs","sources":["../../../../../../../packages/components/table/src/store/watcher.ts"],"sourcesContent":["// @ts-nocheck\nimport { computed, getCurrentInstance, ref, toRefs, unref, watch } from 'vue'\nimport { hasOwn, isArray, isString } from '@element-plus/utils'\nimport {\n getColumnById,\n getColumnByKey,\n getKeysMap,\n getRowIdentity,\n orderBy,\n toggleRowStatus,\n} from '../util'\nimport useExpand from './expand'\nimport useCurrent from './current'\nimport useTree from './tree'\n\nimport type { Ref } from 'vue'\nimport type { TableColumnCtx } from '../table-column/defaults'\nimport type { DefaultRow, Table, TableRefs } from '../table/defaults'\nimport type { StoreFilter } from '.'\n\nconst sortData = (data, states) => {\n const sortingColumn = states.sortingColumn\n if (!sortingColumn || isString(sortingColumn.sortable)) {\n return data\n }\n return orderBy(\n data,\n states.sortProp,\n states.sortOrder,\n sortingColumn.sortMethod,\n sortingColumn.sortBy\n )\n}\n\nconst doFlattenColumns = (columns) => {\n const result = []\n columns.forEach((column) => {\n if (column.children && column.children.length > 0) {\n // eslint-disable-next-line prefer-spread\n result.push.apply(result, doFlattenColumns(column.children))\n } else {\n result.push(column)\n }\n })\n return result\n}\n\nfunction useWatcher<T>() {\n const instance = getCurrentInstance() as Table<T>\n const { size: tableSize } = toRefs(instance.proxy?.$props as any)\n const rowKey: Ref<string> = ref(null)\n const data: Ref<T[]> = ref([])\n const _data: Ref<T[]> = ref([])\n const isComplex = ref(false)\n const _columns: Ref<TableColumnCtx<T>[]> = ref([])\n const originColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const columns: Ref<TableColumnCtx<T>[]> = ref([])\n const fixedColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const rightFixedColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const leafColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const fixedLeafColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const rightFixedLeafColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const updateOrderFns: (() => void)[] = []\n const leafColumnsLength = ref(0)\n const fixedLeafColumnsLength = ref(0)\n const rightFixedLeafColumnsLength = ref(0)\n const isAllSelected = ref(false)\n const selection: Ref<T[]> = ref([])\n const reserveSelection = ref(false)\n const selectOnIndeterminate = ref(false)\n const selectable: Ref<(row: T, index: number) => boolean> = ref(null)\n const filters: Ref<StoreFilter> = ref({})\n const filteredData = ref(null)\n const sortingColumn = ref(null)\n const sortProp = ref(null)\n const sortOrder = ref(null)\n const hoverRow = ref(null)\n\n const selectedMap = computed(() => {\n return rowKey.value ? getKeysMap(selection.value, rowKey.value) : undefined\n })\n\n watch(\n data,\n () => {\n if (instance.state) {\n scheduleLayout(false)\n const needUpdateFixed = instance.props.tableLayout === 'auto'\n if (needUpdateFixed) {\n instance.refs.tableHeaderRef?.updateFixedColumnStyle()\n }\n }\n },\n {\n deep: true,\n }\n )\n\n // 检查 rowKey 是否存在\n const assertRowKey = () => {\n if (!rowKey.value) throw new Error('[ElTable] prop row-key is required')\n }\n\n // 更新 fixed\n const updateChildFixed = (column: TableColumnCtx<T>) => {\n column.children?.forEach((childColumn) => {\n childColumn.fixed = column.fixed\n updateChildFixed(childColumn)\n })\n }\n\n // 更新列\n const updateColumns = () => {\n _columns.value.forEach((column) => {\n updateChildFixed(column)\n })\n fixedColumns.value = _columns.value.filter((column) =>\n [true, 'left'].includes(column.fixed)\n )\n\n const selectColumn = _columns.value.find(\n (column) => column.type === 'selection'\n )\n\n let selectColFixLeft\n if (\n selectColumn &&\n selectColumn.fixed !== 'right' &&\n !fixedColumns.value.includes(selectColumn)\n ) {\n const selectColumnIndex = _columns.value.indexOf(selectColumn)\n if (selectColumnIndex === 0 && fixedColumns.value.length) {\n fixedColumns.value.unshift(selectColumn)\n selectColFixLeft = true\n }\n }\n\n rightFixedColumns.value = _columns.value.filter(\n (column) => column.fixed === 'right'\n )\n\n const notFixedColumns = _columns.value.filter(\n (column) =>\n (selectColFixLeft ? column.type !== 'selection' : true) && !column.fixed\n )\n\n originColumns.value = []\n .concat(fixedColumns.value)\n .concat(notFixedColumns)\n .concat(rightFixedColumns.value)\n const leafColumns = doFlattenColumns(notFixedColumns)\n const fixedLeafColumns = doFlattenColumns(fixedColumns.value)\n const rightFixedLeafColumns = doFlattenColumns(rightFixedColumns.value)\n\n leafColumnsLength.value = leafColumns.length\n fixedLeafColumnsLength.value = fixedLeafColumns.length\n rightFixedLeafColumnsLength.value = rightFixedLeafColumns.length\n\n columns.value = []\n .concat(fixedLeafColumns)\n .concat(leafColumns)\n .concat(rightFixedLeafColumns)\n isComplex.value =\n fixedColumns.value.length > 0 || rightFixedColumns.value.length > 0\n }\n\n // 更新 DOM\n const scheduleLayout = (needUpdateColumns?: boolean, immediate = false) => {\n if (needUpdateColumns) {\n updateColumns()\n }\n if (immediate) {\n instance.state.doLayout()\n } else {\n instance.state.debouncedUpdateLayout()\n }\n }\n\n // 选择\n const isSelected = (row: DefaultRow) => {\n if (selectedMap.value) {\n return !!selectedMap.value[getRowIdentity(row, rowKey.value)]\n } else {\n return selection.value.includes(row)\n }\n }\n\n const clearSelection = () => {\n isAllSelected.value = false\n const oldSelection = selection.value\n selection.value = []\n if (oldSelection.length) {\n instance.emit('selection-change', [])\n }\n }\n\n const cleanSelection = () => {\n let deleted\n if (rowKey.value) {\n deleted = []\n const childrenKey = instance?.store?.states?.childrenColumnName.value\n const dataMap = getKeysMap(data.value, rowKey.value, true, childrenKey)\n for (const key in selectedMap.value) {\n if (hasOwn(selectedMap.value, key) && !dataMap[key]) {\n deleted.push(selectedMap.value[key].row)\n }\n }\n } else {\n deleted = selection.value.filter((item) => !data.value.includes(item))\n }\n if (deleted.length) {\n const newSelection = selection.value.filter(\n (item) => !deleted.includes(item)\n )\n selection.value = newSelection\n instance.emit('selection-change', newSelection.slice())\n }\n }\n\n const getSelectionRows = () => {\n return (selection.value || []).slice()\n }\n\n const toggleRowSelection = (\n row: T,\n selected?: boolean,\n emitChange = true,\n ignoreSelectable = false\n ) => {\n const treeProps = {\n children: instance?.store?.states?.childrenColumnName.value,\n checkStrictly: instance?.store?.states?.checkStrictly.value,\n }\n const changed = toggleRowStatus(\n selection.value,\n row,\n selected,\n treeProps,\n ignoreSelectable ? undefined : selectable.value,\n data.value.indexOf(row),\n rowKey.value\n )\n if (changed) {\n const newSelection = (selection.value || []).slice()\n // 调用 API 修改选中值,不触发 select 事件\n if (emitChange) {\n instance.emit('select', newSelection, row)\n }\n instance.emit('selection-change', newSelection)\n }\n }\n\n const _toggleAllSelection = () => {\n // when only some rows are selected (but not all), select or deselect all of them\n // depending on the value of selectOnIndeterminate\n const value = selectOnIndeterminate.value\n ? !isAllSelected.value\n : !(isAllSelected.value || selection.value.length)\n isAllSelected.value = value\n\n let selectionChanged = false\n let childrenCount = 0\n const rowKey = instance?.store?.states?.rowKey.value\n const { childrenColumnName } = instance.store.states\n const treeProps = {\n children: childrenColumnName.value,\n checkStrictly: false, // Disable checkStrictly when selecting all\n }\n\n data.value.forEach((row, index) => {\n const rowIndex = index + childrenCount\n if (\n toggleRowStatus(\n selection.value,\n row,\n value,\n treeProps,\n selectable.value,\n rowIndex,\n rowKey\n )\n ) {\n selectionChanged = true\n }\n childrenCount += getChildrenCount(getRowIdentity(row, rowKey))\n })\n\n if (selectionChanged) {\n instance.emit(\n 'selection-change',\n selection.value ? selection.value.slice() : []\n )\n }\n instance.emit('select-all', (selection.value || []).slice())\n }\n\n const updateAllSelected = () => {\n // data 为 null 时,解构时的默认值会被忽略\n if (data.value?.length === 0) {\n isAllSelected.value = false\n return\n }\n\n const { childrenColumnName } = instance.store.states\n let rowIndex = 0\n let selectedCount = 0\n\n const checkSelectedStatus = (data: DefaultRow[]) => {\n for (const row of data) {\n const isRowSelectable =\n selectable.value && selectable.value.call(null, row, rowIndex)\n\n if (!isSelected(row)) {\n if (!selectable.value || isRowSelectable) {\n return false\n }\n } else {\n selectedCount++\n }\n rowIndex++\n\n if (\n row[childrenColumnName.value]?.length &&\n !checkSelectedStatus(row[childrenColumnName.value])\n ) {\n return false\n }\n }\n return true\n }\n\n const isAllSelected_ = checkSelectedStatus(data.value || [])\n isAllSelected.value = selectedCount === 0 ? false : isAllSelected_\n }\n\n const getChildrenCount = (rowKey: string) => {\n if (!instance || !instance.store) return 0\n const { treeData } = instance.store.states\n let count = 0\n const children = treeData.value[rowKey]?.children\n if (children) {\n count += children.length\n children.forEach((childKey) => {\n count += getChildrenCount(childKey)\n })\n }\n return count\n }\n\n // 过滤与排序\n const updateFilters = (columns, values) => {\n if (!isArray(columns)) {\n columns = [columns]\n }\n const filters_ = {}\n columns.forEach((col) => {\n filters.value[col.id] = values\n filters_[col.columnKey || col.id] = values\n })\n return filters_\n }\n\n const updateSort = (column, prop, order) => {\n if (sortingColumn.value && sortingColumn.value !== column) {\n sortingColumn.value.order = null\n }\n sortingColumn.value = column\n sortProp.value = prop\n sortOrder.value = order\n }\n\n const execFilter = () => {\n let sourceData = unref(_data)\n Object.keys(filters.value).forEach((columnId) => {\n const values = filters.value[columnId]\n if (!values || values.length === 0) return\n const column = getColumnById(\n {\n columns: columns.value,\n },\n columnId\n )\n if (column && column.filterMethod) {\n sourceData = sourceData.filter((row) => {\n return values.some((value) =>\n column.filterMethod.call(null, value, row, column)\n )\n })\n }\n })\n\n filteredData.value = sourceData\n }\n\n const execSort = () => {\n data.value = sortData(filteredData.value, {\n sortingColumn: sortingColumn.value,\n sortProp: sortProp.value,\n sortOrder: sortOrder.value,\n })\n }\n\n // 根据 filters 与 sort 去过滤 data\n const execQuery = (ignore = undefined) => {\n if (!(ignore && ignore.filter)) {\n execFilter()\n }\n execSort()\n }\n\n const clearFilter = (columnKeys) => {\n const { tableHeaderRef } = instance.refs as TableRefs\n if (!tableHeaderRef) return\n const panels = Object.assign({}, tableHeaderRef.filterPanels)\n\n const keys = Object.keys(panels)\n if (!keys.length) return\n\n if (isString(columnKeys)) {\n columnKeys = [columnKeys]\n }\n\n if (isArray(columnKeys)) {\n const columns_ = columnKeys.map((key) =>\n getColumnByKey(\n {\n columns: columns.value,\n },\n key\n )\n )\n keys.forEach((key) => {\n const column = columns_.find((col) => col.id === key)\n if (column) {\n column.filteredValue = []\n }\n })\n instance.store.commit('filterChange', {\n column: columns_,\n values: [],\n silent: true,\n multi: true,\n })\n } else {\n keys.forEach((key) => {\n const column = columns.value.find((col) => col.id === key)\n if (column) {\n column.filteredValue = []\n }\n })\n\n filters.value = {}\n instance.store.commit('filterChange', {\n column: {},\n values: [],\n silent: true,\n })\n }\n }\n\n const clearSort = () => {\n if (!sortingColumn.value) return\n\n updateSort(null, null, null)\n instance.store.commit('changeSortCondition', {\n silent: true,\n })\n }\n const {\n setExpandRowKeys,\n toggleRowExpansion,\n updateExpandRows,\n states: expandStates,\n isRowExpanded,\n } = useExpand({\n data,\n rowKey,\n })\n const {\n updateTreeExpandKeys,\n toggleTreeExpansion,\n updateTreeData,\n updateKeyChildren,\n loadOrToggle,\n states: treeStates,\n } = useTree({\n data,\n rowKey,\n })\n const {\n updateCurrentRowData,\n updateCurrentRow,\n setCurrentRowKey,\n states: currentData,\n } = useCurrent({\n data,\n rowKey,\n })\n // 适配层,expand-row-keys 在 Expand 与 TreeTable 中都有使用\n const setExpandRowKeysAdapter = (val: string[]) => {\n // 这里会触发额外的计算,但为了兼容性,暂时这么做\n setExpandRowKeys(val)\n updateTreeExpandKeys(val)\n }\n\n // 展开行与 TreeTable 都要使用\n const toggleRowExpansionAdapter = (row: T, expanded?: boolean) => {\n const hasExpandColumn = columns.value.some(({ type }) => type === 'expand')\n if (hasExpandColumn) {\n toggleRowExpansion(row, expanded)\n } else {\n toggleTreeExpansion(row, expanded)\n }\n }\n\n return {\n assertRowKey,\n updateColumns,\n scheduleLayout,\n isSelected,\n clearSelection,\n cleanSelection,\n getSelectionRows,\n toggleRowSelection,\n _toggleAllSelection,\n toggleAllSelection: null,\n updateAllSelected,\n updateFilters,\n updateCurrentRow,\n updateSort,\n execFilter,\n execSort,\n execQuery,\n clearFilter,\n clearSort,\n toggleRowExpansion,\n setExpandRowKeysAdapter,\n setCurrentRowKey,\n toggleRowExpansionAdapter,\n isRowExpanded,\n updateExpandRows,\n updateCurrentRowData,\n loadOrToggle,\n updateTreeData,\n updateKeyChildren,\n states: {\n tableSize,\n rowKey,\n data,\n _data,\n isComplex,\n _columns,\n originColumns,\n columns,\n fixedColumns,\n rightFixedColumns,\n leafColumns,\n fixedLeafColumns,\n rightFixedLeafColumns,\n updateOrderFns,\n leafColumnsLength,\n fixedLeafColumnsLength,\n rightFixedLeafColumnsLength,\n isAllSelected,\n selection,\n reserveSelection,\n selectOnIndeterminate,\n selectable,\n filters,\n filteredData,\n sortingColumn,\n sortProp,\n sortOrder,\n hoverRow,\n ...expandStates,\n ...treeStates,\n ...currentData,\n },\n }\n}\n\nexport default useWatcher\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watcher.mjs","sources":["../../../../../../../packages/components/table/src/store/watcher.ts"],"sourcesContent":["import { computed, getCurrentInstance, ref, toRefs, unref, watch } from 'vue'\nimport { ensureArray, hasOwn, isArray, isString } from '@element-plus/utils'\nimport {\n getColumnById,\n getColumnByKey,\n getKeysMap,\n getRowIdentity,\n orderBy,\n toggleRowStatus,\n} from '../util'\nimport useExpand from './expand'\nimport useCurrent from './current'\nimport useTree from './tree'\n\nimport type { Ref } from 'vue'\nimport type { TableColumnCtx } from '../table-column/defaults'\nimport type {\n DefaultRow,\n Table,\n TableRefs,\n TableSortOrder,\n} from '../table/defaults'\nimport type { StoreFilter } from '.'\n\nconst sortData = <T extends DefaultRow>(\n data: T[],\n states: {\n sortingColumn: TableColumnCtx<T> | null\n sortProp: string | null\n sortOrder: string | number | null\n }\n) => {\n const sortingColumn = states.sortingColumn\n if (!sortingColumn || isString(sortingColumn.sortable)) {\n return data\n }\n return orderBy(\n data,\n states.sortProp,\n states.sortOrder,\n sortingColumn.sortMethod,\n sortingColumn.sortBy\n )\n}\n\nconst doFlattenColumns = <T extends DefaultRow>(\n columns: TableColumnCtx<T>[]\n) => {\n const result: TableColumnCtx<T>[] = []\n columns.forEach((column) => {\n if (column.children && column.children.length > 0) {\n // eslint-disable-next-line prefer-spread\n result.push.apply(result, doFlattenColumns(column.children))\n } else {\n result.push(column)\n }\n })\n return result\n}\n\nfunction useWatcher<T extends DefaultRow>() {\n const instance = getCurrentInstance() as Table<T>\n const { size: tableSize } = toRefs(instance.proxy?.$props as any)\n const rowKey: Ref<string | null> = ref(null)\n const data: Ref<T[]> = ref([])\n const _data: Ref<T[]> = ref([])\n const isComplex = ref(false)\n const _columns: Ref<TableColumnCtx<T>[]> = ref([])\n const originColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const columns: Ref<TableColumnCtx<T>[]> = ref([])\n const fixedColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const rightFixedColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const leafColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const fixedLeafColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const rightFixedLeafColumns: Ref<TableColumnCtx<T>[]> = ref([])\n const updateOrderFns: (() => void)[] = []\n const leafColumnsLength = ref(0)\n const fixedLeafColumnsLength = ref(0)\n const rightFixedLeafColumnsLength = ref(0)\n const isAllSelected = ref(false)\n const selection: Ref<T[]> = ref([])\n const reserveSelection = ref(false)\n const selectOnIndeterminate = ref(false)\n const selectable: Ref<((row: T, index: number) => boolean) | null> = ref(null)\n const filters: Ref<StoreFilter> = ref({})\n const filteredData: Ref<T[] | null> = ref(null)\n const sortingColumn: Ref<TableColumnCtx<T> | null> = ref(null)\n const sortProp: Ref<string | null> = ref(null)\n const sortOrder: Ref<string | number | null> = ref(null)\n const hoverRow: Ref<T | null> = ref(null)\n\n const selectedMap = computed(() => {\n return rowKey.value ? getKeysMap(selection.value, rowKey.value) : undefined\n })\n\n watch(\n data,\n () => {\n if (instance.state) {\n scheduleLayout(false)\n const needUpdateFixed = instance.props.tableLayout === 'auto'\n if (needUpdateFixed) {\n instance.refs.tableHeaderRef?.updateFixedColumnStyle()\n }\n }\n },\n {\n deep: true,\n }\n )\n\n // 检查 rowKey 是否存在\n const assertRowKey = () => {\n if (!rowKey.value) throw new Error('[ElTable] prop row-key is required')\n }\n\n // 更新 fixed\n const updateChildFixed = (column: TableColumnCtx<T>) => {\n column.children?.forEach((childColumn) => {\n childColumn.fixed = column.fixed\n updateChildFixed(childColumn)\n })\n }\n\n // 更新列\n const updateColumns = () => {\n _columns.value.forEach((column) => {\n updateChildFixed(column)\n })\n fixedColumns.value = _columns.value.filter((column) =>\n [true, 'left'].includes(column.fixed)\n )\n\n const selectColumn = _columns.value.find(\n (column) => column.type === 'selection'\n )\n\n let selectColFixLeft: boolean\n if (\n selectColumn &&\n selectColumn.fixed !== 'right' &&\n !fixedColumns.value.includes(selectColumn)\n ) {\n const selectColumnIndex = _columns.value.indexOf(selectColumn)\n if (selectColumnIndex === 0 && fixedColumns.value.length) {\n fixedColumns.value.unshift(selectColumn)\n selectColFixLeft = true\n }\n }\n\n rightFixedColumns.value = _columns.value.filter(\n (column) => column.fixed === 'right'\n )\n\n const notFixedColumns = _columns.value.filter(\n (column) =>\n (selectColFixLeft ? column.type !== 'selection' : true) && !column.fixed\n )\n\n originColumns.value = Array.from(fixedColumns.value)\n .concat(notFixedColumns)\n .concat(rightFixedColumns.value)\n const leafColumns = doFlattenColumns(notFixedColumns)\n const fixedLeafColumns = doFlattenColumns(fixedColumns.value)\n const rightFixedLeafColumns = doFlattenColumns(rightFixedColumns.value)\n\n leafColumnsLength.value = leafColumns.length\n fixedLeafColumnsLength.value = fixedLeafColumns.length\n rightFixedLeafColumnsLength.value = rightFixedLeafColumns.length\n\n columns.value = Array.from(fixedLeafColumns)\n .concat(leafColumns)\n .concat(rightFixedLeafColumns)\n isComplex.value =\n fixedColumns.value.length > 0 || rightFixedColumns.value.length > 0\n }\n\n // 更新 DOM\n const scheduleLayout = (needUpdateColumns?: boolean, immediate = false) => {\n if (needUpdateColumns) {\n updateColumns()\n }\n if (immediate) {\n instance.state.doLayout()\n } else {\n instance.state.debouncedUpdateLayout()\n }\n }\n\n // 选择\n const isSelected = (row: T) => {\n if (selectedMap.value) {\n return !!selectedMap.value[getRowIdentity(row, rowKey.value)]\n } else {\n return selection.value.includes(row)\n }\n }\n\n const clearSelection = () => {\n isAllSelected.value = false\n const oldSelection = selection.value\n selection.value = []\n if (oldSelection.length) {\n instance.emit('selection-change', [])\n }\n }\n\n const cleanSelection = () => {\n let deleted\n if (rowKey.value) {\n deleted = []\n const childrenKey = instance?.store?.states?.childrenColumnName.value\n const dataMap = getKeysMap(data.value, rowKey.value, true, childrenKey)\n for (const key in selectedMap.value) {\n if (hasOwn(selectedMap.value, key) && !dataMap[key]) {\n deleted.push(selectedMap.value[key].row)\n }\n }\n } else {\n deleted = selection.value.filter((item) => !data.value.includes(item))\n }\n if (deleted.length) {\n const newSelection = selection.value.filter(\n (item) => !deleted.includes(item)\n )\n selection.value = newSelection\n instance.emit('selection-change', newSelection.slice())\n }\n }\n\n const getSelectionRows = () => {\n return (selection.value || []).slice()\n }\n\n const toggleRowSelection = (\n row: T,\n selected?: boolean,\n emitChange = true,\n ignoreSelectable = false\n ) => {\n const treeProps = {\n children: instance?.store?.states?.childrenColumnName.value,\n checkStrictly: instance?.store?.states?.checkStrictly.value,\n }\n const changed = toggleRowStatus(\n selection.value,\n row,\n selected,\n treeProps,\n ignoreSelectable ? undefined : selectable.value,\n data.value.indexOf(row),\n rowKey.value\n )\n if (changed) {\n const newSelection = (selection.value || []).slice()\n // 调用 API 修改选中值,不触发 select 事件\n if (emitChange) {\n instance.emit('select', newSelection, row)\n }\n instance.emit('selection-change', newSelection)\n }\n }\n\n const _toggleAllSelection = () => {\n // when only some rows are selected (but not all), select or deselect all of them\n // depending on the value of selectOnIndeterminate\n const value = selectOnIndeterminate.value\n ? !isAllSelected.value\n : !(isAllSelected.value || selection.value.length)\n isAllSelected.value = value\n\n let selectionChanged = false\n let childrenCount = 0\n const rowKey = instance?.store?.states?.rowKey.value\n const { childrenColumnName } = instance.store.states\n const treeProps = {\n children: childrenColumnName.value,\n checkStrictly: false, // Disable checkStrictly when selecting all\n }\n\n data.value.forEach((row, index) => {\n const rowIndex = index + childrenCount\n if (\n toggleRowStatus(\n selection.value,\n row,\n value,\n treeProps,\n selectable.value,\n rowIndex,\n rowKey\n )\n ) {\n selectionChanged = true\n }\n childrenCount += getChildrenCount(getRowIdentity(row, rowKey))\n })\n\n if (selectionChanged) {\n instance.emit(\n 'selection-change',\n selection.value ? selection.value.slice() : []\n )\n }\n instance.emit('select-all', (selection.value || []).slice())\n }\n\n const updateAllSelected = () => {\n // data 为 null 时,解构时的默认值会被忽略\n if (data.value?.length === 0) {\n isAllSelected.value = false\n return\n }\n\n const { childrenColumnName } = instance.store.states\n let rowIndex = 0\n let selectedCount = 0\n\n const checkSelectedStatus = (data: T[]) => {\n for (const row of data) {\n const isRowSelectable =\n selectable.value && selectable.value.call(null, row, rowIndex)\n\n if (!isSelected(row)) {\n if (!selectable.value || isRowSelectable) {\n return false\n }\n } else {\n selectedCount++\n }\n rowIndex++\n\n if (\n row[childrenColumnName.value]?.length &&\n !checkSelectedStatus(row[childrenColumnName.value])\n ) {\n return false\n }\n }\n return true\n }\n\n const isAllSelected_ = checkSelectedStatus(data.value || [])\n isAllSelected.value = selectedCount === 0 ? false : isAllSelected_\n }\n\n const getChildrenCount = (rowKey: string) => {\n if (!instance || !instance.store) return 0\n const { treeData } = instance.store.states\n let count = 0\n const children = treeData.value[rowKey]?.children\n if (children) {\n count += children.length\n children.forEach((childKey) => {\n count += getChildrenCount(childKey)\n })\n }\n return count\n }\n\n // 过滤与排序\n const updateFilters = (column: TableColumnCtx<T>, values: string[]) => {\n const filters_: Record<string, string[]> = {}\n ensureArray(column).forEach((col) => {\n filters.value[col.id] = values\n filters_[col.columnKey || col.id] = values\n })\n return filters_\n }\n\n const updateSort = (\n column: TableColumnCtx<T> | null,\n prop: string | null,\n order: TableSortOrder | null\n ) => {\n if (sortingColumn.value && sortingColumn.value !== column) {\n sortingColumn.value.order = null\n }\n sortingColumn.value = column\n sortProp.value = prop\n sortOrder.value = order\n }\n\n const execFilter = () => {\n let sourceData = unref(_data)\n Object.keys(filters.value).forEach((columnId) => {\n const values = filters.value[columnId]\n if (!values || values.length === 0) return\n const column = getColumnById(\n {\n columns: columns.value,\n },\n columnId\n )\n if (column && column.filterMethod) {\n sourceData = sourceData.filter((row) => {\n return values.some((value) =>\n column.filterMethod.call(null, value, row, column)\n )\n })\n }\n })\n filteredData.value = sourceData\n }\n\n const execSort = () => {\n data.value = sortData(filteredData.value ?? [], {\n sortingColumn: sortingColumn.value,\n sortProp: sortProp.value,\n sortOrder: sortOrder.value,\n })\n }\n\n // 根据 filters 与 sort 去过滤 data\n const execQuery = (ignore: { filter: boolean } | undefined = undefined) => {\n if (!ignore?.filter) {\n execFilter()\n }\n execSort()\n }\n\n const clearFilter = (columnKeys?: string[] | string) => {\n const { tableHeaderRef } = instance.refs as TableRefs\n if (!tableHeaderRef) return\n const panels = Object.assign({}, tableHeaderRef.filterPanels)\n\n const keys = Object.keys(panels)\n if (!keys.length) return\n\n if (isString(columnKeys)) {\n columnKeys = [columnKeys]\n }\n\n if (isArray(columnKeys)) {\n const columns_ = columnKeys.map((key) =>\n getColumnByKey(\n {\n columns: columns.value,\n },\n key\n )\n )\n keys.forEach((key) => {\n const column = columns_.find((col) => col.id === key)\n if (column) {\n column.filteredValue = []\n }\n })\n instance.store.commit('filterChange', {\n column: columns_,\n values: [],\n silent: true,\n multi: true,\n })\n } else {\n keys.forEach((key) => {\n const column = columns.value.find((col) => col.id === key)\n if (column) {\n column.filteredValue = []\n }\n })\n\n filters.value = {}\n instance.store.commit('filterChange', {\n column: {},\n values: [],\n silent: true,\n })\n }\n }\n\n const clearSort = () => {\n if (!sortingColumn.value) return\n\n updateSort(null, null, null)\n instance.store.commit('changeSortCondition', {\n silent: true,\n })\n }\n const {\n setExpandRowKeys,\n toggleRowExpansion,\n updateExpandRows,\n states: expandStates,\n isRowExpanded,\n } = useExpand({\n data,\n rowKey,\n })\n const {\n updateTreeExpandKeys,\n toggleTreeExpansion,\n updateTreeData,\n updateKeyChildren,\n loadOrToggle,\n states: treeStates,\n } = useTree({\n data,\n rowKey,\n })\n const {\n updateCurrentRowData,\n updateCurrentRow,\n setCurrentRowKey,\n states: currentData,\n } = useCurrent({\n data,\n rowKey,\n })\n // 适配层,expand-row-keys 在 Expand 与 TreeTable 中都有使用\n const setExpandRowKeysAdapter = (val: (string | number)[]) => {\n // 这里会触发额外的计算,但为了兼容性,暂时这么做\n setExpandRowKeys(val)\n updateTreeExpandKeys(val)\n }\n\n // 展开行与 TreeTable 都要使用\n const toggleRowExpansionAdapter = (row: T, expanded?: boolean) => {\n const hasExpandColumn = columns.value.some(({ type }) => type === 'expand')\n if (hasExpandColumn) {\n toggleRowExpansion(row, expanded)\n } else {\n toggleTreeExpansion(row, expanded)\n }\n }\n\n return {\n assertRowKey,\n updateColumns,\n scheduleLayout,\n isSelected,\n clearSelection,\n cleanSelection,\n getSelectionRows,\n toggleRowSelection,\n _toggleAllSelection,\n toggleAllSelection: null as (() => void) | null,\n updateAllSelected,\n updateFilters,\n updateCurrentRow,\n updateSort,\n execFilter,\n execSort,\n execQuery,\n clearFilter,\n clearSort,\n toggleRowExpansion,\n setExpandRowKeysAdapter,\n setCurrentRowKey,\n toggleRowExpansionAdapter,\n isRowExpanded,\n updateExpandRows,\n updateCurrentRowData,\n loadOrToggle,\n updateTreeData,\n updateKeyChildren,\n states: {\n tableSize,\n rowKey,\n data,\n _data,\n isComplex,\n _columns,\n originColumns,\n columns,\n fixedColumns,\n rightFixedColumns,\n leafColumns,\n fixedLeafColumns,\n rightFixedLeafColumns,\n updateOrderFns,\n leafColumnsLength,\n fixedLeafColumnsLength,\n rightFixedLeafColumnsLength,\n isAllSelected,\n selection,\n reserveSelection,\n selectOnIndeterminate,\n selectable,\n filters,\n filteredData,\n sortingColumn,\n sortProp,\n sortOrder,\n hoverRow,\n ...expandStates,\n ...treeStates,\n ...currentData,\n },\n }\n}\n\nexport default useWatcher\n"],"names":["ensureArray"],"mappings":"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"}