@element-plus/nightly 0.0.20260118 → 0.0.20260119

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 (609) hide show
  1. package/dist/index.full.js +830 -495
  2. package/dist/index.full.min.js +15 -15
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +17 -17
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +821 -495
  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/avatar/src/avatar-group-props.d.ts +52 -15
  276. package/es/components/avatar/src/avatar-group-props.mjs +14 -6
  277. package/es/components/avatar/src/avatar-group-props.mjs.map +1 -1
  278. package/es/components/avatar/src/avatar-group.d.ts +41 -33
  279. package/es/components/avatar/src/avatar.d.ts +39 -3
  280. package/es/components/avatar/src/avatar.mjs.map +1 -1
  281. package/es/components/avatar/src/avatar.vue.d.ts +27 -50
  282. package/es/components/avatar/src/avatar.vue2.mjs +16 -8
  283. package/es/components/avatar/src/avatar.vue2.mjs.map +1 -1
  284. package/es/components/color-picker-panel/src/color-picker-panel.d.ts +37 -2
  285. package/es/components/color-picker-panel/src/color-picker-panel.mjs.map +1 -1
  286. package/es/components/color-picker-panel/src/color-picker-panel.vue.d.ts +30 -33
  287. package/es/components/color-picker-panel/src/color-picker-panel.vue2.mjs +15 -7
  288. package/es/components/color-picker-panel/src/color-picker-panel.vue2.mjs.map +1 -1
  289. package/es/components/color-picker-panel/src/components/alpha-slider.vue.d.ts +2 -23
  290. package/es/components/color-picker-panel/src/components/alpha-slider.vue2.mjs +8 -5
  291. package/es/components/color-picker-panel/src/components/alpha-slider.vue2.mjs.map +1 -1
  292. package/es/components/color-picker-panel/src/components/hue-slider.vue.d.ts +2 -23
  293. package/es/components/color-picker-panel/src/components/hue-slider.vue2.mjs +8 -5
  294. package/es/components/color-picker-panel/src/components/hue-slider.vue2.mjs.map +1 -1
  295. package/es/components/color-picker-panel/src/components/predefine.vue.d.ts +1 -43
  296. package/es/components/color-picker-panel/src/components/predefine.vue2.mjs +8 -4
  297. package/es/components/color-picker-panel/src/components/predefine.vue2.mjs.map +1 -1
  298. package/es/components/color-picker-panel/src/components/sv-panel.vue.d.ts +2 -20
  299. package/es/components/color-picker-panel/src/components/sv-panel.vue2.mjs +6 -4
  300. package/es/components/color-picker-panel/src/components/sv-panel.vue2.mjs.map +1 -1
  301. package/es/components/color-picker-panel/src/props/predefine.d.ts +13 -2
  302. package/es/components/color-picker-panel/src/props/predefine.mjs.map +1 -1
  303. package/es/components/color-picker-panel/src/props/slider.d.ts +17 -4
  304. package/es/components/color-picker-panel/src/props/slider.mjs.map +1 -1
  305. package/es/components/color-picker-panel/src/props/sv-panel.d.ts +11 -2
  306. package/es/components/color-picker-panel/src/props/sv-panel.mjs.map +1 -1
  307. package/es/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  308. package/es/components/index.mjs +7 -7
  309. package/es/components/popper/index.mjs +2 -2
  310. package/es/components/popper/src/arrow.d.ts +16 -2
  311. package/es/components/popper/src/arrow.mjs +4 -1
  312. package/es/components/popper/src/arrow.mjs.map +1 -1
  313. package/es/components/popper/src/composables/use-content-dom.mjs.map +1 -1
  314. package/es/components/popper/src/content.d.ts +81 -3
  315. package/es/components/popper/src/content.mjs +25 -2
  316. package/es/components/popper/src/content.mjs.map +1 -1
  317. package/es/components/popper/src/content.vue.d.ts +75 -517
  318. package/es/components/popper/src/content.vue2.mjs +31 -4
  319. package/es/components/popper/src/content.vue2.mjs.map +1 -1
  320. package/es/components/popper/src/popper.d.ts +13 -2
  321. package/es/components/popper/src/popper.mjs.map +1 -1
  322. package/es/components/popper/src/popper.vue.d.ts +23 -6
  323. package/es/components/popper/src/popper.vue2.mjs +3 -2
  324. package/es/components/popper/src/popper.vue2.mjs.map +1 -1
  325. package/es/components/popper/src/trigger.d.ts +18 -1
  326. package/es/components/popper/src/trigger.mjs.map +1 -1
  327. package/es/components/popper/src/trigger.vue.d.ts +19 -109
  328. package/es/components/popper/src/trigger.vue2.mjs +14 -3
  329. package/es/components/popper/src/trigger.vue2.mjs.map +1 -1
  330. package/es/components/popper/src/utils.d.ts +4 -4
  331. package/es/components/popper/src/utils.mjs.map +1 -1
  332. package/es/components/progress/src/progress.d.ts +65 -2
  333. package/es/components/progress/src/progress.mjs.map +1 -1
  334. package/es/components/progress/src/progress.vue.d.ts +50 -62
  335. package/es/components/progress/src/progress.vue2.mjs +35 -21
  336. package/es/components/progress/src/progress.vue2.mjs.map +1 -1
  337. package/es/components/radio/index.mjs +3 -3
  338. package/es/components/radio/src/radio-button.d.ts +20 -2
  339. package/es/components/radio/src/radio-button.mjs +8 -1
  340. package/es/components/radio/src/radio-button.mjs.map +1 -1
  341. package/es/components/radio/src/radio-button.vue.d.ts +35 -30
  342. package/es/components/radio/src/radio-button.vue2.mjs +14 -5
  343. package/es/components/radio/src/radio-button.vue2.mjs.map +1 -1
  344. package/es/components/radio/src/radio-group.d.ts +78 -9
  345. package/es/components/radio/src/radio-group.mjs +16 -5
  346. package/es/components/radio/src/radio-group.mjs.map +1 -1
  347. package/es/components/radio/src/radio-group.vue.d.ts +48 -57
  348. package/es/components/radio/src/radio-group.vue2.mjs +20 -5
  349. package/es/components/radio/src/radio-group.vue2.mjs.map +1 -1
  350. package/es/components/radio/src/radio.d.ts +54 -2
  351. package/es/components/radio/src/radio.mjs +9 -1
  352. package/es/components/radio/src/radio.mjs.map +1 -1
  353. package/es/components/radio/src/radio.vue.d.ts +39 -34
  354. package/es/components/radio/src/radio.vue2.mjs +16 -6
  355. package/es/components/radio/src/radio.vue2.mjs.map +1 -1
  356. package/es/components/radio/src/use-radio.d.ts +2 -2
  357. package/es/components/segmented/index.d.ts +163 -74
  358. package/es/components/segmented/src/segmented.d.ts +51 -2
  359. package/es/components/segmented/src/segmented.mjs.map +1 -1
  360. package/es/components/segmented/src/segmented.vue.d.ts +37 -41
  361. package/es/components/segmented/src/segmented.vue2.mjs +18 -6
  362. package/es/components/segmented/src/segmented.vue2.mjs.map +1 -1
  363. package/es/components/skeleton/src/skeleton-item.d.ts +13 -2
  364. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  365. package/es/components/skeleton/src/skeleton-item.vue.d.ts +23 -6
  366. package/es/components/skeleton/src/skeleton-item.vue2.mjs +5 -4
  367. package/es/components/skeleton/src/skeleton-item.vue2.mjs.map +1 -1
  368. package/es/components/skeleton/src/skeleton.d.ts +29 -2
  369. package/es/components/skeleton/src/skeleton.mjs +2 -2
  370. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  371. package/es/components/skeleton/src/skeleton.vue.d.ts +30 -44
  372. package/es/components/skeleton/src/skeleton.vue2.mjs +11 -6
  373. package/es/components/skeleton/src/skeleton.vue2.mjs.map +1 -1
  374. package/es/components/splitter/src/split-panel.d.ts +14 -2
  375. package/es/components/splitter/src/split-panel.mjs.map +1 -1
  376. package/es/components/splitter/src/split-panel.vue.d.ts +24 -46
  377. package/es/components/splitter/src/split-panel.vue2.mjs +8 -2
  378. package/es/components/splitter/src/split-panel.vue2.mjs.map +1 -1
  379. package/es/components/splitter/src/splitter.d.ts +12 -2
  380. package/es/components/splitter/src/splitter.mjs.map +1 -1
  381. package/es/components/splitter/src/splitter.vue.d.ts +24 -10
  382. package/es/components/splitter/src/splitter.vue2.mjs +5 -2
  383. package/es/components/splitter/src/splitter.vue2.mjs.map +1 -1
  384. package/es/components/statistic/src/statistic.d.ts +45 -2
  385. package/es/components/statistic/src/statistic.mjs.map +1 -1
  386. package/es/components/statistic/src/statistic.vue.d.ts +37 -37
  387. package/es/components/statistic/src/statistic.vue2.mjs +18 -9
  388. package/es/components/statistic/src/statistic.vue2.mjs.map +1 -1
  389. package/es/components/text/src/text.d.ts +30 -2
  390. package/es/components/text/src/text.mjs.map +1 -1
  391. package/es/components/text/src/text.vue.d.ts +29 -27
  392. package/es/components/text/src/text.vue2.mjs +9 -4
  393. package/es/components/text/src/text.vue2.mjs.map +1 -1
  394. package/es/components/tooltip/src/content.vue.d.ts +1 -1
  395. package/es/components/tooltip/src/tooltip.vue.d.ts +1 -1
  396. package/es/components/tree-v2/src/composables/useCheck.mjs.map +1 -1
  397. package/es/components/tree-v2/src/composables/useTree.mjs.map +1 -1
  398. package/es/components/tree-v2/src/tree-node.vue.d.ts +29 -34
  399. package/es/components/tree-v2/src/tree-node.vue2.mjs +34 -22
  400. package/es/components/tree-v2/src/tree-node.vue2.mjs.map +1 -1
  401. package/es/components/tree-v2/src/tree.vue.d.ts +64 -112
  402. package/es/components/tree-v2/src/tree.vue2.mjs +36 -8
  403. package/es/components/tree-v2/src/tree.vue2.mjs.map +1 -1
  404. package/es/components/tree-v2/src/types.d.ts +43 -4
  405. package/es/components/tree-v2/src/virtual-tree.d.ts +11 -0
  406. package/es/components/tree-v2/src/virtual-tree.mjs +1 -1
  407. package/es/components/tree-v2/src/virtual-tree.mjs.map +1 -1
  408. package/es/components/upload/index.mjs +2 -2
  409. package/es/components/upload/src/upload-content.d.ts +38 -3
  410. package/es/components/upload/src/upload-content.mjs +12 -2
  411. package/es/components/upload/src/upload-content.mjs.map +1 -1
  412. package/es/components/upload/src/upload-content.vue.d.ts +75 -212
  413. package/es/components/upload/src/upload-content.vue2.mjs +36 -11
  414. package/es/components/upload/src/upload-content.vue2.mjs.map +1 -1
  415. package/es/components/upload/src/upload-dragger.d.ts +11 -2
  416. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  417. package/es/components/upload/src/upload-dragger.vue.d.ts +24 -10
  418. package/es/components/upload/src/upload-dragger.vue2.mjs +5 -2
  419. package/es/components/upload/src/upload-dragger.vue2.mjs.map +1 -1
  420. package/es/components/upload/src/upload-list.d.ts +18 -3
  421. package/es/components/upload/src/upload-list.mjs.map +1 -1
  422. package/es/components/upload/src/upload-list.vue.d.ts +33 -44
  423. package/es/components/upload/src/upload-list.vue2.mjs +22 -14
  424. package/es/components/upload/src/upload-list.vue2.mjs.map +1 -1
  425. package/es/components/upload/src/upload.d.ts +161 -2
  426. package/es/components/upload/src/upload.mjs +25 -1
  427. package/es/components/upload/src/upload.mjs.map +1 -1
  428. package/es/components/upload/src/upload.vue.d.ts +77 -254
  429. package/es/components/upload/src/upload.vue2.mjs +40 -12
  430. package/es/components/upload/src/upload.vue2.mjs.map +1 -1
  431. package/es/components/upload/src/use-handlers.d.ts +1 -1
  432. package/es/components/upload/src/use-handlers.mjs.map +1 -1
  433. package/es/index.mjs +7 -7
  434. package/es/utils/vue/icon.d.ts +1 -0
  435. package/es/utils/vue/icon.mjs.map +1 -1
  436. package/es/version.d.ts +1 -1
  437. package/es/version.mjs +1 -1
  438. package/es/version.mjs.map +1 -1
  439. package/lib/components/avatar/src/avatar-group-props.d.ts +52 -15
  440. package/lib/components/avatar/src/avatar-group-props.js +14 -6
  441. package/lib/components/avatar/src/avatar-group-props.js.map +1 -1
  442. package/lib/components/avatar/src/avatar-group.d.ts +41 -33
  443. package/lib/components/avatar/src/avatar.d.ts +39 -3
  444. package/lib/components/avatar/src/avatar.js.map +1 -1
  445. package/lib/components/avatar/src/avatar.vue.d.ts +27 -50
  446. package/lib/components/avatar/src/avatar.vue2.js +15 -7
  447. package/lib/components/avatar/src/avatar.vue2.js.map +1 -1
  448. package/lib/components/color-picker-panel/src/color-picker-panel.d.ts +37 -2
  449. package/lib/components/color-picker-panel/src/color-picker-panel.js.map +1 -1
  450. package/lib/components/color-picker-panel/src/color-picker-panel.vue.d.ts +30 -33
  451. package/lib/components/color-picker-panel/src/color-picker-panel.vue2.js +14 -6
  452. package/lib/components/color-picker-panel/src/color-picker-panel.vue2.js.map +1 -1
  453. package/lib/components/color-picker-panel/src/components/alpha-slider.vue.d.ts +2 -23
  454. package/lib/components/color-picker-panel/src/components/alpha-slider.vue2.js +8 -5
  455. package/lib/components/color-picker-panel/src/components/alpha-slider.vue2.js.map +1 -1
  456. package/lib/components/color-picker-panel/src/components/hue-slider.vue.d.ts +2 -23
  457. package/lib/components/color-picker-panel/src/components/hue-slider.vue2.js +8 -5
  458. package/lib/components/color-picker-panel/src/components/hue-slider.vue2.js.map +1 -1
  459. package/lib/components/color-picker-panel/src/components/predefine.vue.d.ts +1 -43
  460. package/lib/components/color-picker-panel/src/components/predefine.vue2.js +8 -4
  461. package/lib/components/color-picker-panel/src/components/predefine.vue2.js.map +1 -1
  462. package/lib/components/color-picker-panel/src/components/sv-panel.vue.d.ts +2 -20
  463. package/lib/components/color-picker-panel/src/components/sv-panel.vue2.js +6 -4
  464. package/lib/components/color-picker-panel/src/components/sv-panel.vue2.js.map +1 -1
  465. package/lib/components/color-picker-panel/src/props/predefine.d.ts +13 -2
  466. package/lib/components/color-picker-panel/src/props/predefine.js.map +1 -1
  467. package/lib/components/color-picker-panel/src/props/slider.d.ts +17 -4
  468. package/lib/components/color-picker-panel/src/props/slider.js.map +1 -1
  469. package/lib/components/color-picker-panel/src/props/sv-panel.d.ts +11 -2
  470. package/lib/components/color-picker-panel/src/props/sv-panel.js.map +1 -1
  471. package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  472. package/lib/components/index.js +9 -0
  473. package/lib/components/index.js.map +1 -1
  474. package/lib/components/popper/index.js +3 -0
  475. package/lib/components/popper/index.js.map +1 -1
  476. package/lib/components/popper/src/arrow.d.ts +16 -2
  477. package/lib/components/popper/src/arrow.js +4 -0
  478. package/lib/components/popper/src/arrow.js.map +1 -1
  479. package/lib/components/popper/src/composables/use-content-dom.js.map +1 -1
  480. package/lib/components/popper/src/content.d.ts +81 -3
  481. package/lib/components/popper/src/content.js +25 -0
  482. package/lib/components/popper/src/content.js.map +1 -1
  483. package/lib/components/popper/src/content.vue.d.ts +75 -517
  484. package/lib/components/popper/src/content.vue2.js +29 -2
  485. package/lib/components/popper/src/content.vue2.js.map +1 -1
  486. package/lib/components/popper/src/popper.d.ts +13 -2
  487. package/lib/components/popper/src/popper.js.map +1 -1
  488. package/lib/components/popper/src/popper.vue.d.ts +23 -6
  489. package/lib/components/popper/src/popper.vue2.js +3 -2
  490. package/lib/components/popper/src/popper.vue2.js.map +1 -1
  491. package/lib/components/popper/src/trigger.d.ts +18 -1
  492. package/lib/components/popper/src/trigger.js.map +1 -1
  493. package/lib/components/popper/src/trigger.vue.d.ts +19 -109
  494. package/lib/components/popper/src/trigger.vue2.js +14 -3
  495. package/lib/components/popper/src/trigger.vue2.js.map +1 -1
  496. package/lib/components/popper/src/utils.d.ts +4 -4
  497. package/lib/components/popper/src/utils.js.map +1 -1
  498. package/lib/components/progress/src/progress.d.ts +65 -2
  499. package/lib/components/progress/src/progress.js.map +1 -1
  500. package/lib/components/progress/src/progress.vue.d.ts +50 -62
  501. package/lib/components/progress/src/progress.vue2.js +35 -21
  502. package/lib/components/progress/src/progress.vue2.js.map +1 -1
  503. package/lib/components/radio/index.js +3 -0
  504. package/lib/components/radio/index.js.map +1 -1
  505. package/lib/components/radio/src/radio-button.d.ts +20 -2
  506. package/lib/components/radio/src/radio-button.js +8 -0
  507. package/lib/components/radio/src/radio-button.js.map +1 -1
  508. package/lib/components/radio/src/radio-button.vue.d.ts +35 -30
  509. package/lib/components/radio/src/radio-button.vue2.js +12 -3
  510. package/lib/components/radio/src/radio-button.vue2.js.map +1 -1
  511. package/lib/components/radio/src/radio-group.d.ts +78 -9
  512. package/lib/components/radio/src/radio-group.js +16 -4
  513. package/lib/components/radio/src/radio-group.js.map +1 -1
  514. package/lib/components/radio/src/radio-group.vue.d.ts +48 -57
  515. package/lib/components/radio/src/radio-group.vue2.js +18 -3
  516. package/lib/components/radio/src/radio-group.vue2.js.map +1 -1
  517. package/lib/components/radio/src/radio.d.ts +54 -2
  518. package/lib/components/radio/src/radio.js +9 -0
  519. package/lib/components/radio/src/radio.js.map +1 -1
  520. package/lib/components/radio/src/radio.vue.d.ts +39 -34
  521. package/lib/components/radio/src/radio.vue2.js +14 -4
  522. package/lib/components/radio/src/radio.vue2.js.map +1 -1
  523. package/lib/components/radio/src/use-radio.d.ts +2 -2
  524. package/lib/components/segmented/index.d.ts +163 -74
  525. package/lib/components/segmented/src/segmented.d.ts +51 -2
  526. package/lib/components/segmented/src/segmented.js.map +1 -1
  527. package/lib/components/segmented/src/segmented.vue.d.ts +37 -41
  528. package/lib/components/segmented/src/segmented.vue2.js +17 -5
  529. package/lib/components/segmented/src/segmented.vue2.js.map +1 -1
  530. package/lib/components/skeleton/src/skeleton-item.d.ts +13 -2
  531. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  532. package/lib/components/skeleton/src/skeleton-item.vue.d.ts +23 -6
  533. package/lib/components/skeleton/src/skeleton-item.vue2.js +5 -4
  534. package/lib/components/skeleton/src/skeleton-item.vue2.js.map +1 -1
  535. package/lib/components/skeleton/src/skeleton.d.ts +29 -2
  536. package/lib/components/skeleton/src/skeleton.js +2 -2
  537. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  538. package/lib/components/skeleton/src/skeleton.vue.d.ts +30 -44
  539. package/lib/components/skeleton/src/skeleton.vue2.js +11 -6
  540. package/lib/components/skeleton/src/skeleton.vue2.js.map +1 -1
  541. package/lib/components/splitter/src/split-panel.d.ts +14 -2
  542. package/lib/components/splitter/src/split-panel.js.map +1 -1
  543. package/lib/components/splitter/src/split-panel.vue.d.ts +24 -46
  544. package/lib/components/splitter/src/split-panel.vue2.js +7 -1
  545. package/lib/components/splitter/src/split-panel.vue2.js.map +1 -1
  546. package/lib/components/splitter/src/splitter.d.ts +12 -2
  547. package/lib/components/splitter/src/splitter.js.map +1 -1
  548. package/lib/components/splitter/src/splitter.vue.d.ts +24 -10
  549. package/lib/components/splitter/src/splitter.vue2.js +4 -1
  550. package/lib/components/splitter/src/splitter.vue2.js.map +1 -1
  551. package/lib/components/statistic/src/statistic.d.ts +45 -2
  552. package/lib/components/statistic/src/statistic.js.map +1 -1
  553. package/lib/components/statistic/src/statistic.vue.d.ts +37 -37
  554. package/lib/components/statistic/src/statistic.vue2.js +18 -9
  555. package/lib/components/statistic/src/statistic.vue2.js.map +1 -1
  556. package/lib/components/text/src/text.d.ts +30 -2
  557. package/lib/components/text/src/text.js.map +1 -1
  558. package/lib/components/text/src/text.vue.d.ts +29 -27
  559. package/lib/components/text/src/text.vue2.js +9 -4
  560. package/lib/components/text/src/text.vue2.js.map +1 -1
  561. package/lib/components/tooltip/src/content.vue.d.ts +1 -1
  562. package/lib/components/tooltip/src/tooltip.vue.d.ts +1 -1
  563. package/lib/components/tree-v2/src/composables/useCheck.js.map +1 -1
  564. package/lib/components/tree-v2/src/composables/useTree.js.map +1 -1
  565. package/lib/components/tree-v2/src/tree-node.vue.d.ts +29 -34
  566. package/lib/components/tree-v2/src/tree-node.vue2.js +33 -21
  567. package/lib/components/tree-v2/src/tree-node.vue2.js.map +1 -1
  568. package/lib/components/tree-v2/src/tree.vue.d.ts +64 -112
  569. package/lib/components/tree-v2/src/tree.vue2.js +35 -7
  570. package/lib/components/tree-v2/src/tree.vue2.js.map +1 -1
  571. package/lib/components/tree-v2/src/types.d.ts +43 -4
  572. package/lib/components/tree-v2/src/virtual-tree.d.ts +11 -0
  573. package/lib/components/tree-v2/src/virtual-tree.js +1 -0
  574. package/lib/components/tree-v2/src/virtual-tree.js.map +1 -1
  575. package/lib/components/upload/index.js +3 -0
  576. package/lib/components/upload/index.js.map +1 -1
  577. package/lib/components/upload/src/upload-content.d.ts +38 -3
  578. package/lib/components/upload/src/upload-content.js +11 -0
  579. package/lib/components/upload/src/upload-content.js.map +1 -1
  580. package/lib/components/upload/src/upload-content.vue.d.ts +75 -212
  581. package/lib/components/upload/src/upload-content.vue2.js +35 -10
  582. package/lib/components/upload/src/upload-content.vue2.js.map +1 -1
  583. package/lib/components/upload/src/upload-dragger.d.ts +11 -2
  584. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  585. package/lib/components/upload/src/upload-dragger.vue.d.ts +24 -10
  586. package/lib/components/upload/src/upload-dragger.vue2.js +4 -1
  587. package/lib/components/upload/src/upload-dragger.vue2.js.map +1 -1
  588. package/lib/components/upload/src/upload-list.d.ts +18 -3
  589. package/lib/components/upload/src/upload-list.js.map +1 -1
  590. package/lib/components/upload/src/upload-list.vue.d.ts +33 -44
  591. package/lib/components/upload/src/upload-list.vue2.js +21 -13
  592. package/lib/components/upload/src/upload-list.vue2.js.map +1 -1
  593. package/lib/components/upload/src/upload.d.ts +161 -2
  594. package/lib/components/upload/src/upload.js +26 -0
  595. package/lib/components/upload/src/upload.js.map +1 -1
  596. package/lib/components/upload/src/upload.vue.d.ts +77 -254
  597. package/lib/components/upload/src/upload.vue2.js +38 -10
  598. package/lib/components/upload/src/upload.vue2.js.map +1 -1
  599. package/lib/components/upload/src/use-handlers.d.ts +1 -1
  600. package/lib/components/upload/src/use-handlers.js.map +1 -1
  601. package/lib/index.js +9 -0
  602. package/lib/index.js.map +1 -1
  603. package/lib/utils/vue/icon.d.ts +1 -0
  604. package/lib/utils/vue/icon.js.map +1 -1
  605. package/lib/version.d.ts +1 -1
  606. package/lib/version.js +1 -1
  607. package/lib/version.js.map +1 -1
  608. package/package.json +2 -2
  609. package/web-types.json +1 -1
@@ -708,10 +708,10 @@ declare const __VLS_base: import("vue").DefineComponent<{
708
708
  gpuAcceleration: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
709
709
  popperOptions: Partial<import("@element-plus/nightly/es/components/popper").Options>;
710
710
  enterable: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
711
- stopPopperMouseEvent: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
712
711
  pure: boolean;
713
712
  focusOnShow: boolean;
714
713
  trapping: boolean;
714
+ stopPopperMouseEvent: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
715
715
  triggerKeys: string[];
716
716
  focusOnTarget: boolean;
717
717
  rawContent: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useCheck.js","sources":["../../../../../../../packages/components/tree-v2/src/composables/useCheck.ts"],"sourcesContent":["import { getCurrentInstance, nextTick, ref, watch } from 'vue'\nimport {\n NODE_CHECK,\n NODE_CHECK_CHANGE,\n SetOperationEnum,\n} from '../virtual-tree'\n\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\nimport type { Ref } from 'vue'\nimport type { Tree, TreeKey, TreeNode, TreeNodeData, TreeProps } from '../types'\n\nexport function useCheck(props: TreeProps, tree: Ref<Tree | undefined>) {\n const checkedKeys = ref<Set<TreeKey>>(new Set())\n const indeterminateKeys = ref<Set<TreeKey>>(new Set())\n const { emit } = getCurrentInstance()!\n\n watch(\n [() => tree.value, () => props.defaultCheckedKeys],\n () => {\n return nextTick(() => {\n _setCheckedKeys(props.defaultCheckedKeys)\n })\n },\n {\n immediate: true,\n }\n )\n\n const updateCheckedKeys = () => {\n if (!tree.value || !props.showCheckbox || props.checkStrictly) {\n return\n }\n const { levelTreeNodeMap, maxLevel } = tree.value\n const checkedKeySet = checkedKeys.value\n const indeterminateKeySet = new Set<TreeKey>()\n // It is easier to determine the indeterminate state by\n // traversing from bottom to top\n // leaf nodes not have indeterminate status and can be skipped\n for (let level = maxLevel; level >= 1; --level) {\n const nodes = levelTreeNodeMap.get(level)\n if (!nodes) continue\n nodes.forEach((node) => {\n const children = node.children\n let isEffectivelyChecked =\n !node.isLeaf || node.disabled || checkedKeySet.has(node.key)\n if (children) {\n // Whether all child nodes are selected\n let allChecked = true\n // Whether a child node is selected\n let hasChecked = false\n for (const childNode of children) {\n const key = childNode.key\n if (!childNode.isEffectivelyChecked) {\n isEffectivelyChecked = false\n }\n if (checkedKeySet.has(key)) {\n hasChecked = true\n } else if (indeterminateKeySet.has(key)) {\n allChecked = false\n hasChecked = true\n break\n } else {\n allChecked = false\n }\n }\n if (allChecked) {\n checkedKeySet.add(node.key)\n } else if (hasChecked) {\n indeterminateKeySet.add(node.key)\n checkedKeySet.delete(node.key)\n } else {\n checkedKeySet.delete(node.key)\n indeterminateKeySet.delete(node.key)\n }\n }\n node.isEffectivelyChecked = isEffectivelyChecked\n })\n }\n indeterminateKeys.value = indeterminateKeySet\n }\n\n const isChecked = (node: TreeNode) => checkedKeys.value.has(node.key)\n\n const isIndeterminate = (node: TreeNode) =>\n indeterminateKeys.value.has(node.key)\n\n const toggleCheckbox = (\n node: TreeNode,\n isChecked: CheckboxValueType,\n nodeClick = true,\n immediateUpdate = true\n ) => {\n const checkedKeySet = checkedKeys.value\n const children = node.children\n if (!props.checkStrictly && nodeClick && children?.length) {\n isChecked = children.some((node) => !node.isEffectivelyChecked)\n }\n\n const toggle = (node: TreeNode, checked: CheckboxValueType) => {\n checkedKeySet[checked ? SetOperationEnum.ADD : SetOperationEnum.DELETE](\n node.key\n )\n const children = node.children\n if (!props.checkStrictly && children) {\n children.forEach((childNode) => {\n if (!childNode.disabled || childNode.children) {\n toggle(childNode, checked)\n }\n })\n }\n }\n toggle(node, isChecked)\n if (immediateUpdate) {\n updateCheckedKeys()\n }\n if (nodeClick) {\n afterNodeCheck(node, isChecked)\n }\n }\n\n const afterNodeCheck = (node: TreeNode, checked: CheckboxValueType) => {\n const { checkedNodes, checkedKeys } = getChecked()\n const { halfCheckedNodes, halfCheckedKeys } = getHalfChecked()\n emit(NODE_CHECK, node.data, {\n checkedKeys,\n checkedNodes,\n halfCheckedKeys,\n halfCheckedNodes,\n })\n emit(NODE_CHECK_CHANGE, node.data, checked)\n }\n\n // expose\n function getCheckedKeys(leafOnly = false): TreeKey[] {\n return getChecked(leafOnly).checkedKeys\n }\n\n function getCheckedNodes(leafOnly = false): TreeNodeData[] {\n return getChecked(leafOnly).checkedNodes\n }\n\n function getHalfCheckedKeys(): TreeKey[] {\n return getHalfChecked().halfCheckedKeys\n }\n\n function getHalfCheckedNodes(): TreeNodeData[] {\n return getHalfChecked().halfCheckedNodes\n }\n\n function getChecked(leafOnly = false): {\n checkedKeys: TreeKey[]\n checkedNodes: TreeNodeData[]\n } {\n const checkedNodes: TreeNodeData[] = []\n const keys: TreeKey[] = []\n if (tree?.value && props.showCheckbox) {\n const { treeNodeMap } = tree.value\n checkedKeys.value.forEach((key) => {\n const node = treeNodeMap.get(key)\n if (node && (!leafOnly || (leafOnly && node.isLeaf))) {\n keys.push(key)\n checkedNodes.push(node.data)\n }\n })\n }\n return {\n checkedKeys: keys,\n checkedNodes,\n }\n }\n\n function getHalfChecked(): {\n halfCheckedKeys: TreeKey[]\n halfCheckedNodes: TreeNodeData[]\n } {\n const halfCheckedNodes: TreeNodeData[] = []\n const halfCheckedKeys: TreeKey[] = []\n if (tree?.value && props.showCheckbox) {\n const { treeNodeMap } = tree.value\n indeterminateKeys.value.forEach((key) => {\n const node = treeNodeMap.get(key)\n if (node) {\n halfCheckedKeys.push(key)\n halfCheckedNodes.push(node.data)\n }\n })\n }\n return {\n halfCheckedNodes,\n halfCheckedKeys,\n }\n }\n\n function setCheckedKeys(keys: TreeKey[]) {\n checkedKeys.value.clear()\n indeterminateKeys.value.clear()\n nextTick(() => {\n _setCheckedKeys(keys)\n })\n }\n\n function setChecked(key: TreeKey, isChecked: boolean) {\n if (tree?.value && props.showCheckbox) {\n const node = tree.value.treeNodeMap.get(key)\n if (node) {\n toggleCheckbox(node, isChecked, false)\n }\n }\n }\n\n function _setCheckedKeys(keys: TreeKey[]) {\n if (tree?.value) {\n const { treeNodeMap } = tree.value\n if (props.showCheckbox && treeNodeMap && keys?.length > 0) {\n for (const key of keys) {\n const node = treeNodeMap.get(key)\n if (node && !isChecked(node)) {\n toggleCheckbox(node, true, false, false)\n }\n }\n updateCheckedKeys()\n }\n }\n }\n\n return {\n updateCheckedKeys,\n toggleCheckbox,\n isChecked,\n isIndeterminate,\n // expose\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n }\n}\n"],"names":["ref","getCurrentInstance","watch","nextTick","isChecked","node","SetOperationEnum","children","checkedKeys","NODE_CHECK","NODE_CHECK_CHANGE"],"mappings":";;;;;AAWO,SAAS,QAAA,CAAS,OAAkB,IAAA,EAA6B;AACtE,EAAA,MAAM,WAAA,GAAcA,OAAA,iBAAkB,IAAI,GAAA,EAAK,CAAA;AAC/C,EAAA,MAAM,iBAAA,GAAoBA,OAAA,iBAAkB,IAAI,GAAA,EAAK,CAAA;AACrD,EAAA,MAAM,EAAE,IAAA,EAAK,GAAIC,sBAAA,EAAmB;AAEpC,EAAAC,SAAA;AAAA,IACE,CAAC,MAAM,IAAA,CAAK,KAAA,EAAO,MAAM,MAAM,kBAAkB,CAAA;AAAA,IACjD,MAAM;AACJ,MAAA,OAAOC,aAAS,MAAM;AACpB,QAAA,eAAA,CAAgB,MAAM,kBAAkB,CAAA;AAAA,MAC1C,CAAC,CAAA;AAAA,IACH,CAAA;AAAA,IACA;AAAA,MACE,SAAA,EAAW;AAAA;AACb,GACF;AAEA,EAAA,MAAM,oBAAoB,MAAM;AAC9B,IAAA,IAAI,CAAC,IAAA,CAAK,KAAA,IAAS,CAAC,KAAA,CAAM,YAAA,IAAgB,MAAM,aAAA,EAAe;AAC7D,MAAA;AAAA,IACF;AACA,IAAA,MAAM,EAAE,gBAAA,EAAkB,QAAA,EAAS,GAAI,IAAA,CAAK,KAAA;AAC5C,IAAA,MAAM,gBAAgB,WAAA,CAAY,KAAA;AAClC,IAAA,MAAM,mBAAA,uBAA0B,GAAA,EAAa;AAI7C,IAAA,KAAA,IAAS,KAAA,GAAQ,QAAA,EAAU,KAAA,IAAS,CAAA,EAAG,EAAE,KAAA,EAAO;AAC9C,MAAA,MAAM,KAAA,GAAQ,gBAAA,CAAiB,GAAA,CAAI,KAAK,CAAA;AACxC,MAAA,IAAI,CAAC,KAAA,EAAO;AACZ,MAAA,KAAA,CAAM,OAAA,CAAQ,CAAC,IAAA,KAAS;AACtB,QAAA,MAAM,WAAW,IAAA,CAAK,QAAA;AACtB,QAAA,IAAI,oBAAA,GACF,CAAC,IAAA,CAAK,MAAA,IAAU,KAAK,QAAA,IAAY,aAAA,CAAc,GAAA,CAAI,IAAA,CAAK,GAAG,CAAA;AAC7D,QAAA,IAAI,QAAA,EAAU;AAEZ,UAAA,IAAI,UAAA,GAAa,IAAA;AAEjB,UAAA,IAAI,UAAA,GAAa,KAAA;AACjB,UAAA,KAAA,MAAW,aAAa,QAAA,EAAU;AAChC,YAAA,MAAM,MAAM,SAAA,CAAU,GAAA;AACtB,YAAA,IAAI,CAAC,UAAU,oBAAA,EAAsB;AACnC,cAAA,oBAAA,GAAuB,KAAA;AAAA,YACzB;AACA,YAAA,IAAI,aAAA,CAAc,GAAA,CAAI,GAAG,CAAA,EAAG;AAC1B,cAAA,UAAA,GAAa,IAAA;AAAA,YACf,CAAA,MAAA,IAAW,mBAAA,CAAoB,GAAA,CAAI,GAAG,CAAA,EAAG;AACvC,cAAA,UAAA,GAAa,KAAA;AACb,cAAA,UAAA,GAAa,IAAA;AACb,cAAA;AAAA,YACF,CAAA,MAAO;AACL,cAAA,UAAA,GAAa,KAAA;AAAA,YACf;AAAA,UACF;AACA,UAAA,IAAI,UAAA,EAAY;AACd,YAAA,aAAA,CAAc,GAAA,CAAI,KAAK,GAAG,CAAA;AAAA,UAC5B,WAAW,UAAA,EAAY;AACrB,YAAA,mBAAA,CAAoB,GAAA,CAAI,KAAK,GAAG,CAAA;AAChC,YAAA,aAAA,CAAc,MAAA,CAAO,KAAK,GAAG,CAAA;AAAA,UAC/B,CAAA,MAAO;AACL,YAAA,aAAA,CAAc,MAAA,CAAO,KAAK,GAAG,CAAA;AAC7B,YAAA,mBAAA,CAAoB,MAAA,CAAO,KAAK,GAAG,CAAA;AAAA,UACrC;AAAA,QACF;AACA,QAAA,IAAA,CAAK,oBAAA,GAAuB,oBAAA;AAAA,MAC9B,CAAC,CAAA;AAAA,IACH;AACA,IAAA,iBAAA,CAAkB,KAAA,GAAQ,mBAAA;AAAA,EAC5B,CAAA;AAEA,EAAA,MAAM,YAAY,CAAC,IAAA,KAAmB,YAAY,KAAA,CAAM,GAAA,CAAI,KAAK,GAAG,CAAA;AAEpE,EAAA,MAAM,kBAAkB,CAAC,IAAA,KACvB,kBAAkB,KAAA,CAAM,GAAA,CAAI,KAAK,GAAG,CAAA;AAEtC,EAAA,MAAM,iBAAiB,CACrB,IAAA,EACAC,YACA,SAAA,GAAY,IAAA,EACZ,kBAAkB,IAAA,KACf;AACH,IAAA,MAAM,gBAAgB,WAAA,CAAY,KAAA;AAClC,IAAA,MAAM,WAAW,IAAA,CAAK,QAAA;AACtB,IAAA,IAAI,CAAC,KAAA,CAAM,aAAA,IAAiB,SAAA,KAAa,qCAAU,MAAA,CAAA,EAAQ;AACzD,MAAAA,aAAY,QAAA,CAAS,IAAA,CAAK,CAACC,KAAAA,KAAS,CAACA,MAAK,oBAAoB,CAAA;AAAA,IAChE;AAEA,IAAA,MAAM,MAAA,GAAS,CAACA,KAAAA,EAAgB,OAAA,KAA+B;AAC7D,MAAA,aAAA,CAAc,OAAA,GAAUC,4BAAA,CAAiB,GAAA,GAAMA,4BAAA,CAAiB,MAAM,CAAA;AAAA,QACpED,KAAAA,CAAK;AAAA,OACP;AACA,MAAA,MAAME,YAAWF,KAAAA,CAAK,QAAA;AACtB,MAAA,IAAI,CAAC,KAAA,CAAM,aAAA,IAAiBE,SAAAA,EAAU;AACpC,QAAAA,SAAAA,CAAS,OAAA,CAAQ,CAAC,SAAA,KAAc;AAC9B,UAAA,IAAI,CAAC,SAAA,CAAU,QAAA,IAAY,SAAA,CAAU,QAAA,EAAU;AAC7C,YAAA,MAAA,CAAO,WAAW,OAAO,CAAA;AAAA,UAC3B;AAAA,QACF,CAAC,CAAA;AAAA,MACH;AAAA,IACF,CAAA;AACA,IAAA,MAAA,CAAO,MAAMH,UAAS,CAAA;AACtB,IAAA,IAAI,eAAA,EAAiB;AACnB,MAAA,iBAAA,EAAkB;AAAA,IACpB;AACA,IAAA,IAAI,SAAA,EAAW;AACb,MAAA,cAAA,CAAe,MAAMA,UAAS,CAAA;AAAA,IAChC;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,cAAA,GAAiB,CAAC,IAAA,EAAgB,OAAA,KAA+B;AACrE,IAAA,MAAM,EAAE,YAAA,EAAc,WAAA,EAAAI,YAAAA,KAAgB,UAAA,EAAW;AACjD,IAAA,MAAM,EAAE,gBAAA,EAAkB,eAAA,EAAgB,GAAI,cAAA,EAAe;AAC7D,IAAA,IAAA,CAAKC,sBAAA,EAAY,KAAK,IAAA,EAAM;AAAA,MAC1B,WAAA,EAAAD,YAAAA;AAAA,MACA,YAAA;AAAA,MACA,eAAA;AAAA,MACA;AAAA,KACD,CAAA;AACD,IAAA,IAAA,CAAKE,6BAAA,EAAmB,IAAA,CAAK,IAAA,EAAM,OAAO,CAAA;AAAA,EAC5C,CAAA;AAGA,EAAA,SAAS,cAAA,CAAe,WAAW,KAAA,EAAkB;AACnD,IAAA,OAAO,UAAA,CAAW,QAAQ,CAAA,CAAE,WAAA;AAAA,EAC9B;AAEA,EAAA,SAAS,eAAA,CAAgB,WAAW,KAAA,EAAuB;AACzD,IAAA,OAAO,UAAA,CAAW,QAAQ,CAAA,CAAE,YAAA;AAAA,EAC9B;AAEA,EAAA,SAAS,kBAAA,GAAgC;AACvC,IAAA,OAAO,gBAAe,CAAE,eAAA;AAAA,EAC1B;AAEA,EAAA,SAAS,mBAAA,GAAsC;AAC7C,IAAA,OAAO,gBAAe,CAAE,gBAAA;AAAA,EAC1B;AAEA,EAAA,SAAS,UAAA,CAAW,WAAW,KAAA,EAG7B;AACA,IAAA,MAAM,eAA+B,EAAC;AACtC,IAAA,MAAM,OAAkB,EAAC;AACzB,IAAA,IAAA,CAAI,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,KAAA,KAAS,KAAA,CAAM,YAAA,EAAc;AACrC,MAAA,MAAM,EAAE,WAAA,EAAY,GAAI,IAAA,CAAK,KAAA;AAC7B,MAAA,WAAA,CAAY,KAAA,CAAM,OAAA,CAAQ,CAAC,GAAA,KAAQ;AACjC,QAAA,MAAM,IAAA,GAAO,WAAA,CAAY,GAAA,CAAI,GAAG,CAAA;AAChC,QAAA,IAAI,IAAA,KAAS,CAAC,QAAA,IAAa,QAAA,IAAY,KAAK,MAAA,CAAA,EAAU;AACpD,UAAA,IAAA,CAAK,KAAK,GAAG,CAAA;AACb,UAAA,YAAA,CAAa,IAAA,CAAK,KAAK,IAAI,CAAA;AAAA,QAC7B;AAAA,MACF,CAAC,CAAA;AAAA,IACH;AACA,IAAA,OAAO;AAAA,MACL,WAAA,EAAa,IAAA;AAAA,MACb;AAAA,KACF;AAAA,EACF;AAEA,EAAA,SAAS,cAAA,GAGP;AACA,IAAA,MAAM,mBAAmC,EAAC;AAC1C,IAAA,MAAM,kBAA6B,EAAC;AACpC,IAAA,IAAA,CAAI,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,KAAA,KAAS,KAAA,CAAM,YAAA,EAAc;AACrC,MAAA,MAAM,EAAE,WAAA,EAAY,GAAI,IAAA,CAAK,KAAA;AAC7B,MAAA,iBAAA,CAAkB,KAAA,CAAM,OAAA,CAAQ,CAAC,GAAA,KAAQ;AACvC,QAAA,MAAM,IAAA,GAAO,WAAA,CAAY,GAAA,CAAI,GAAG,CAAA;AAChC,QAAA,IAAI,IAAA,EAAM;AACR,UAAA,eAAA,CAAgB,KAAK,GAAG,CAAA;AACxB,UAAA,gBAAA,CAAiB,IAAA,CAAK,KAAK,IAAI,CAAA;AAAA,QACjC;AAAA,MACF,CAAC,CAAA;AAAA,IACH;AACA,IAAA,OAAO;AAAA,MACL,gBAAA;AAAA,MACA;AAAA,KACF;AAAA,EACF;AAEA,EAAA,SAAS,eAAe,IAAA,EAAiB;AACvC,IAAA,WAAA,CAAY,MAAM,KAAA,EAAM;AACxB,IAAA,iBAAA,CAAkB,MAAM,KAAA,EAAM;AAC9B,IAAAP,YAAA,CAAS,MAAM;AACb,MAAA,eAAA,CAAgB,IAAI,CAAA;AAAA,IACtB,CAAC,CAAA;AAAA,EACH;AAEA,EAAA,SAAS,UAAA,CAAW,KAAcC,UAAAA,EAAoB;AACpD,IAAA,IAAA,CAAI,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,KAAA,KAAS,KAAA,CAAM,YAAA,EAAc;AACrC,MAAA,MAAM,IAAA,GAAO,IAAA,CAAK,KAAA,CAAM,WAAA,CAAY,IAAI,GAAG,CAAA;AAC3C,MAAA,IAAI,IAAA,EAAM;AACR,QAAA,cAAA,CAAe,IAAA,EAAMA,YAAW,KAAK,CAAA;AAAA,MACvC;AAAA,IACF;AAAA,EACF;AAEA,EAAA,SAAS,gBAAgB,IAAA,EAAiB;AACxC,IAAA,IAAI,6BAAM,KAAA,EAAO;AACf,MAAA,MAAM,EAAE,WAAA,EAAY,GAAI,IAAA,CAAK,KAAA;AAC7B,MAAA,IAAI,KAAA,CAAM,YAAA,IAAgB,WAAA,IAAA,CAAe,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,UAAS,CAAA,EAAG;AACzD,QAAA,KAAA,MAAW,OAAO,IAAA,EAAM;AACtB,UAAA,MAAM,IAAA,GAAO,WAAA,CAAY,GAAA,CAAI,GAAG,CAAA;AAChC,UAAA,IAAI,IAAA,IAAQ,CAAC,SAAA,CAAU,IAAI,CAAA,EAAG;AAC5B,YAAA,cAAA,CAAe,IAAA,EAAM,IAAA,EAAM,KAAA,EAAO,KAAK,CAAA;AAAA,UACzC;AAAA,QACF;AACA,QAAA,iBAAA,EAAkB;AAAA,MACpB;AAAA,IACF;AAAA,EACF;AAEA,EAAA,OAAO;AAAA,IACL,iBAAA;AAAA,IACA,cAAA;AAAA,IACA,SAAA;AAAA,IACA,eAAA;AAAA;AAAA,IAEA,cAAA;AAAA,IACA,eAAA;AAAA,IACA,kBAAA;AAAA,IACA,mBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
1
+ {"version":3,"file":"useCheck.js","sources":["../../../../../../../packages/components/tree-v2/src/composables/useCheck.ts"],"sourcesContent":["import { getCurrentInstance, nextTick, ref, watch } from 'vue'\nimport {\n NODE_CHECK,\n NODE_CHECK_CHANGE,\n SetOperationEnum,\n} from '../virtual-tree'\n\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\nimport type { Ref } from 'vue'\nimport type { Tree, TreeKey, TreeNode, TreeNodeData, TreeProps } from '../types'\n\nexport function useCheck(props: TreeProps, tree: Ref<Tree | undefined>) {\n const checkedKeys = ref<Set<TreeKey>>(new Set())\n const indeterminateKeys = ref<Set<TreeKey>>(new Set())\n const { emit } = getCurrentInstance()!\n\n watch(\n [() => tree.value, () => props.defaultCheckedKeys],\n () => {\n return nextTick(() => {\n _setCheckedKeys(props.defaultCheckedKeys!)\n })\n },\n {\n immediate: true,\n }\n )\n\n const updateCheckedKeys = () => {\n if (!tree.value || !props.showCheckbox || props.checkStrictly) {\n return\n }\n const { levelTreeNodeMap, maxLevel } = tree.value\n const checkedKeySet = checkedKeys.value\n const indeterminateKeySet = new Set<TreeKey>()\n // It is easier to determine the indeterminate state by\n // traversing from bottom to top\n // leaf nodes not have indeterminate status and can be skipped\n for (let level = maxLevel; level >= 1; --level) {\n const nodes = levelTreeNodeMap.get(level)\n if (!nodes) continue\n nodes.forEach((node) => {\n const children = node.children\n let isEffectivelyChecked =\n !node.isLeaf || node.disabled || checkedKeySet.has(node.key)\n if (children) {\n // Whether all child nodes are selected\n let allChecked = true\n // Whether a child node is selected\n let hasChecked = false\n for (const childNode of children) {\n const key = childNode.key\n if (!childNode.isEffectivelyChecked) {\n isEffectivelyChecked = false\n }\n if (checkedKeySet.has(key)) {\n hasChecked = true\n } else if (indeterminateKeySet.has(key)) {\n allChecked = false\n hasChecked = true\n break\n } else {\n allChecked = false\n }\n }\n if (allChecked) {\n checkedKeySet.add(node.key)\n } else if (hasChecked) {\n indeterminateKeySet.add(node.key)\n checkedKeySet.delete(node.key)\n } else {\n checkedKeySet.delete(node.key)\n indeterminateKeySet.delete(node.key)\n }\n }\n node.isEffectivelyChecked = isEffectivelyChecked\n })\n }\n indeterminateKeys.value = indeterminateKeySet\n }\n\n const isChecked = (node: TreeNode) => checkedKeys.value.has(node.key)\n\n const isIndeterminate = (node: TreeNode) =>\n indeterminateKeys.value.has(node.key)\n\n const toggleCheckbox = (\n node: TreeNode,\n isChecked: CheckboxValueType,\n nodeClick = true,\n immediateUpdate = true\n ) => {\n const checkedKeySet = checkedKeys.value\n const children = node.children\n if (!props.checkStrictly && nodeClick && children?.length) {\n isChecked = children.some((node) => !node.isEffectivelyChecked)\n }\n\n const toggle = (node: TreeNode, checked: CheckboxValueType) => {\n checkedKeySet[checked ? SetOperationEnum.ADD : SetOperationEnum.DELETE](\n node.key\n )\n const children = node.children\n if (!props.checkStrictly && children) {\n children.forEach((childNode) => {\n if (!childNode.disabled || childNode.children) {\n toggle(childNode, checked)\n }\n })\n }\n }\n toggle(node, isChecked)\n if (immediateUpdate) {\n updateCheckedKeys()\n }\n if (nodeClick) {\n afterNodeCheck(node, isChecked)\n }\n }\n\n const afterNodeCheck = (node: TreeNode, checked: CheckboxValueType) => {\n const { checkedNodes, checkedKeys } = getChecked()\n const { halfCheckedNodes, halfCheckedKeys } = getHalfChecked()\n emit(NODE_CHECK, node.data, {\n checkedKeys,\n checkedNodes,\n halfCheckedKeys,\n halfCheckedNodes,\n })\n emit(NODE_CHECK_CHANGE, node.data, checked)\n }\n\n // expose\n function getCheckedKeys(leafOnly = false): TreeKey[] {\n return getChecked(leafOnly).checkedKeys\n }\n\n function getCheckedNodes(leafOnly = false): TreeNodeData[] {\n return getChecked(leafOnly).checkedNodes\n }\n\n function getHalfCheckedKeys(): TreeKey[] {\n return getHalfChecked().halfCheckedKeys\n }\n\n function getHalfCheckedNodes(): TreeNodeData[] {\n return getHalfChecked().halfCheckedNodes\n }\n\n function getChecked(leafOnly = false): {\n checkedKeys: TreeKey[]\n checkedNodes: TreeNodeData[]\n } {\n const checkedNodes: TreeNodeData[] = []\n const keys: TreeKey[] = []\n if (tree?.value && props.showCheckbox) {\n const { treeNodeMap } = tree.value\n checkedKeys.value.forEach((key) => {\n const node = treeNodeMap.get(key)\n if (node && (!leafOnly || (leafOnly && node.isLeaf))) {\n keys.push(key)\n checkedNodes.push(node.data)\n }\n })\n }\n return {\n checkedKeys: keys,\n checkedNodes,\n }\n }\n\n function getHalfChecked(): {\n halfCheckedKeys: TreeKey[]\n halfCheckedNodes: TreeNodeData[]\n } {\n const halfCheckedNodes: TreeNodeData[] = []\n const halfCheckedKeys: TreeKey[] = []\n if (tree?.value && props.showCheckbox) {\n const { treeNodeMap } = tree.value\n indeterminateKeys.value.forEach((key) => {\n const node = treeNodeMap.get(key)\n if (node) {\n halfCheckedKeys.push(key)\n halfCheckedNodes.push(node.data)\n }\n })\n }\n return {\n halfCheckedNodes,\n halfCheckedKeys,\n }\n }\n\n function setCheckedKeys(keys: TreeKey[]) {\n checkedKeys.value.clear()\n indeterminateKeys.value.clear()\n nextTick(() => {\n _setCheckedKeys(keys)\n })\n }\n\n function setChecked(key: TreeKey, isChecked: boolean) {\n if (tree?.value && props.showCheckbox) {\n const node = tree.value.treeNodeMap.get(key)\n if (node) {\n toggleCheckbox(node, isChecked, false)\n }\n }\n }\n\n function _setCheckedKeys(keys: TreeKey[]) {\n if (tree?.value) {\n const { treeNodeMap } = tree.value\n if (props.showCheckbox && treeNodeMap && keys?.length > 0) {\n for (const key of keys) {\n const node = treeNodeMap.get(key)\n if (node && !isChecked(node)) {\n toggleCheckbox(node, true, false, false)\n }\n }\n updateCheckedKeys()\n }\n }\n }\n\n return {\n updateCheckedKeys,\n toggleCheckbox,\n isChecked,\n isIndeterminate,\n // expose\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n }\n}\n"],"names":["ref","getCurrentInstance","watch","nextTick","isChecked","node","SetOperationEnum","children","checkedKeys","NODE_CHECK","NODE_CHECK_CHANGE"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTree.js","sources":["../../../../../../../packages/components/tree-v2/src/composables/useTree.ts"],"sourcesContent":["import { computed, ref, shallowRef, watch } from 'vue'\nimport { isObject } from '@element-plus/utils'\nimport {\n CURRENT_CHANGE,\n NODE_CLICK,\n NODE_COLLAPSE,\n NODE_DROP,\n NODE_EXPAND,\n TreeOptionsEnum,\n} from '../virtual-tree'\nimport { useCheck } from './useCheck'\nimport { useFilter } from './useFilter'\n\nimport type {\n FixedSizeList,\n Alignment as ScrollStrategy,\n} from '@element-plus/components/virtual-list'\nimport type { SetupContext } from 'vue'\nimport type { treeEmits } from '../virtual-tree'\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\nimport type {\n Tree,\n TreeData,\n TreeKey,\n TreeNode,\n TreeNodeData,\n TreeProps,\n} from '../types'\n\nexport function useTree(\n props: TreeProps,\n emit: SetupContext<typeof treeEmits>['emit']\n) {\n const expandedKeySet = ref<Set<TreeKey>>(new Set())\n const currentKey = ref<TreeKey | undefined>()\n const tree = shallowRef<Tree | undefined>()\n const listRef = ref<typeof FixedSizeList | undefined>()\n\n const {\n isIndeterminate,\n isChecked,\n toggleCheckbox,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n } = useCheck(props, tree)\n\n const { doFilter, hiddenNodeKeySet, isForceHiddenExpandIcon } = useFilter(\n props,\n tree\n )\n\n const valueKey = computed(() => {\n return props.props?.value || TreeOptionsEnum.KEY\n })\n const childrenKey = computed(() => {\n return props.props?.children || TreeOptionsEnum.CHILDREN\n })\n const disabledKey = computed(() => {\n return props.props?.disabled || TreeOptionsEnum.DISABLED\n })\n const labelKey = computed(() => {\n return props.props?.label || TreeOptionsEnum.LABEL\n })\n\n const flattenTree = computed(() => {\n const expandedKeys = expandedKeySet.value\n const hiddenKeys = hiddenNodeKeySet.value\n const flattenNodes: TreeNode[] = []\n const nodes = tree.value?.treeNodes || []\n\n const stack: TreeNode[] = []\n for (let i = nodes.length - 1; i >= 0; --i) {\n stack.push(nodes[i])\n }\n while (stack.length) {\n const node = stack.pop()!\n if (hiddenKeys.has(node.key)) continue\n\n flattenNodes.push(node)\n if (node.children && expandedKeys.has(node.key)) {\n for (let i = node.children.length - 1; i >= 0; --i) {\n stack.push(node.children[i])\n }\n }\n }\n\n return flattenNodes\n })\n\n const isNotEmpty = computed(() => {\n return flattenTree.value.length > 0\n })\n\n function createTree(data: TreeData): Tree {\n const treeNodeMap: Map<TreeKey, TreeNode> = new Map()\n const levelTreeNodeMap: Map<number, TreeNode[]> = new Map()\n let maxLevel = 1\n function traverse(\n nodes: TreeData,\n level = 1,\n parent: TreeNode | undefined = undefined\n ) {\n const siblings: TreeNode[] = []\n for (const rawNode of nodes) {\n const value = getKey(rawNode)\n const node: TreeNode = {\n level,\n key: value,\n data: rawNode,\n }\n node.label = getLabel(rawNode)\n node.parent = parent\n const children = getChildren(rawNode)\n node.disabled = getDisabled(rawNode)\n node.isLeaf = !children || children.length === 0\n node.expanded = expandedKeySet.value.has(value)\n if (children && children.length) {\n node.children = traverse(children, level + 1, node)\n }\n siblings.push(node)\n treeNodeMap.set(value, node)\n if (!levelTreeNodeMap.has(level)) {\n levelTreeNodeMap.set(level, [])\n }\n levelTreeNodeMap.get(level)?.push(node)\n }\n if (level > maxLevel) {\n maxLevel = level\n }\n return siblings\n }\n const treeNodes: TreeNode[] = traverse(data)\n return {\n treeNodeMap,\n levelTreeNodeMap,\n maxLevel,\n treeNodes,\n }\n }\n\n function filter(query: string) {\n const keys = doFilter(query)\n if (keys) {\n expandedKeySet.value = keys\n }\n }\n\n function getChildren(node: TreeNodeData): TreeNodeData[] {\n return node[childrenKey.value]\n }\n\n function getKey(node: TreeNodeData): TreeKey {\n if (!node) {\n return ''\n }\n return node[valueKey.value]\n }\n\n function getDisabled(node: TreeNodeData): boolean {\n return node[disabledKey.value]\n }\n\n function getLabel(node: TreeNodeData): string {\n return node[labelKey.value]\n }\n\n function toggleExpand(node: TreeNode) {\n const expandedKeys = expandedKeySet.value\n if (expandedKeys.has(node.key)) {\n collapseNode(node)\n } else {\n expandNode(node)\n }\n }\n\n function setExpandedKeys(keys: TreeKey[]) {\n const expandedKeys = new Set<TreeKey>()\n const nodeMap = tree.value!.treeNodeMap\n\n expandedKeySet.value.forEach((key) => {\n const node = nodeMap.get(key)!\n expandedKeySet.value.delete(node.key)\n node.expanded = false\n })\n\n keys.forEach((k) => {\n let node = nodeMap.get(k)\n while (node && !expandedKeys.has(node.key)) {\n expandedKeys.add(node.key)\n node.expanded = true\n node = node.parent\n }\n })\n\n expandedKeySet.value = expandedKeys\n }\n\n function handleNodeClick(node: TreeNode, e: MouseEvent) {\n emit(NODE_CLICK, node.data, node, e)\n handleCurrentChange(node)\n if (props.expandOnClickNode) {\n toggleExpand(node)\n }\n if (\n props.showCheckbox &&\n (props.checkOnClickNode || (node.isLeaf && props.checkOnClickLeaf)) &&\n !node.disabled\n ) {\n toggleCheckbox(node, !isChecked(node), true)\n }\n }\n\n function handleNodeDrop(node: TreeNode, e: DragEvent) {\n emit(NODE_DROP, node.data, node, e)\n }\n\n function handleCurrentChange(node: TreeNode) {\n if (!isCurrent(node)) {\n currentKey.value = node.key\n emit(CURRENT_CHANGE, node.data, node)\n }\n }\n\n function handleNodeCheck(node: TreeNode, checked: CheckboxValueType) {\n toggleCheckbox(node, checked)\n }\n\n function expandNode(node: TreeNode) {\n const keySet = expandedKeySet.value\n if (tree.value && props.accordion) {\n // whether only one node among the same level can be expanded at one time\n const { treeNodeMap } = tree.value\n keySet.forEach((key) => {\n const treeNode = treeNodeMap.get(key)\n if (node && node.level === treeNode?.level) {\n keySet.delete(key)\n treeNode.expanded = false\n }\n })\n }\n keySet.add(node.key)\n const _node = getNode(node.key)\n if (_node) {\n _node.expanded = true\n emit(NODE_EXPAND, _node.data, _node)\n }\n }\n\n function collapseNode(node: TreeNode) {\n expandedKeySet.value.delete(node.key)\n const _node = getNode(node.key)\n if (_node) {\n _node.expanded = false\n emit(NODE_COLLAPSE, _node.data, _node)\n }\n }\n\n function isDisabled(node: TreeNode): boolean {\n return !!node.disabled\n }\n\n function isCurrent(node: TreeNode): boolean {\n const current = currentKey.value\n return current !== undefined && current === node.key\n }\n\n function getCurrentNode(): TreeNodeData | undefined {\n if (!currentKey.value) return undefined\n return tree.value?.treeNodeMap.get(currentKey.value)?.data\n }\n\n function getCurrentKey(): TreeKey | undefined {\n return currentKey.value\n }\n\n function setCurrentKey(key: TreeKey): void {\n currentKey.value = key\n }\n\n function setData(data: TreeData) {\n tree.value = createTree(data)\n }\n\n function getNode(data: TreeKey | TreeNodeData) {\n const key = isObject(data) ? getKey(data) : data\n return tree.value?.treeNodeMap.get(key)\n }\n\n function scrollToNode(key: TreeKey, strategy: ScrollStrategy = 'auto') {\n const node = getNode(key)\n if (node && listRef.value) {\n listRef.value.scrollToItem(flattenTree.value.indexOf(node), strategy)\n }\n }\n\n function scrollTo(offset: number) {\n listRef.value?.scrollTo(offset)\n }\n\n watch(\n () => props.currentNodeKey,\n (key) => {\n currentKey.value = key\n },\n {\n immediate: true,\n }\n )\n\n watch(\n () => props.defaultExpandedKeys,\n (key) => {\n expandedKeySet.value = new Set<TreeKey>(key)\n },\n {\n immediate: true,\n }\n )\n\n watch(\n () => props.data,\n (data: TreeData) => {\n setData(data)\n },\n {\n immediate: true,\n }\n )\n\n return {\n tree,\n flattenTree,\n isNotEmpty,\n listRef,\n getKey,\n getChildren,\n toggleExpand,\n toggleCheckbox,\n isChecked,\n isIndeterminate,\n isDisabled,\n isCurrent,\n isForceHiddenExpandIcon,\n handleNodeClick,\n handleNodeDrop,\n handleNodeCheck,\n // expose\n getCurrentNode,\n getCurrentKey,\n setCurrentKey,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n filter,\n setData,\n getNode,\n expandNode,\n collapseNode,\n setExpandedKeys,\n scrollToNode,\n scrollTo,\n }\n}\n"],"names":["ref","shallowRef","useCheck","useFilter","computed","TreeOptionsEnum","NODE_CLICK","NODE_DROP","CURRENT_CHANGE","NODE_EXPAND","NODE_COLLAPSE","isObject","watch"],"mappings":"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"}
1
+ {"version":3,"file":"useTree.js","sources":["../../../../../../../packages/components/tree-v2/src/composables/useTree.ts"],"sourcesContent":["import { computed, ref, shallowRef, watch } from 'vue'\nimport { isObject } from '@element-plus/utils'\nimport {\n CURRENT_CHANGE,\n NODE_CLICK,\n NODE_COLLAPSE,\n NODE_DROP,\n NODE_EXPAND,\n TreeOptionsEnum,\n} from '../virtual-tree'\nimport { useCheck } from './useCheck'\nimport { useFilter } from './useFilter'\n\nimport type {\n FixedSizeList,\n Alignment as ScrollStrategy,\n} from '@element-plus/components/virtual-list'\nimport type { SetupContext } from 'vue'\nimport type { treeEmits } from '../virtual-tree'\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\nimport type {\n Tree,\n TreeData,\n TreeKey,\n TreeNode,\n TreeNodeData,\n TreeProps,\n} from '../types'\n\nexport function useTree(\n props: TreeProps,\n emit: SetupContext<typeof treeEmits>['emit']\n) {\n const expandedKeySet = ref<Set<TreeKey>>(new Set())\n const currentKey = ref<TreeKey | undefined>()\n const tree = shallowRef<Tree | undefined>()\n const listRef = ref<typeof FixedSizeList | undefined>()\n\n const {\n isIndeterminate,\n isChecked,\n toggleCheckbox,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n } = useCheck(props, tree)\n\n const { doFilter, hiddenNodeKeySet, isForceHiddenExpandIcon } = useFilter(\n props,\n tree\n )\n\n const valueKey = computed(() => {\n return props.props?.value || TreeOptionsEnum.KEY\n })\n const childrenKey = computed(() => {\n return props.props?.children || TreeOptionsEnum.CHILDREN\n })\n const disabledKey = computed(() => {\n return props.props?.disabled || TreeOptionsEnum.DISABLED\n })\n const labelKey = computed(() => {\n return props.props?.label || TreeOptionsEnum.LABEL\n })\n\n const flattenTree = computed(() => {\n const expandedKeys = expandedKeySet.value\n const hiddenKeys = hiddenNodeKeySet.value\n const flattenNodes: TreeNode[] = []\n const nodes = tree.value?.treeNodes || []\n\n const stack: TreeNode[] = []\n for (let i = nodes.length - 1; i >= 0; --i) {\n stack.push(nodes[i])\n }\n while (stack.length) {\n const node = stack.pop()!\n if (hiddenKeys.has(node.key)) continue\n\n flattenNodes.push(node)\n if (node.children && expandedKeys.has(node.key)) {\n for (let i = node.children.length - 1; i >= 0; --i) {\n stack.push(node.children[i])\n }\n }\n }\n\n return flattenNodes\n })\n\n const isNotEmpty = computed(() => {\n return flattenTree.value.length > 0\n })\n\n function createTree(data: TreeData): Tree {\n const treeNodeMap: Map<TreeKey, TreeNode> = new Map()\n const levelTreeNodeMap: Map<number, TreeNode[]> = new Map()\n let maxLevel = 1\n function traverse(\n nodes: TreeData,\n level = 1,\n parent: TreeNode | undefined = undefined\n ) {\n const siblings: TreeNode[] = []\n for (const rawNode of nodes) {\n const value = getKey(rawNode)\n const node: TreeNode = {\n level,\n key: value,\n data: rawNode,\n }\n node.label = getLabel(rawNode)\n node.parent = parent\n const children = getChildren(rawNode)\n node.disabled = getDisabled(rawNode)\n node.isLeaf = !children || children.length === 0\n node.expanded = expandedKeySet.value.has(value)\n if (children && children.length) {\n node.children = traverse(children, level + 1, node)\n }\n siblings.push(node)\n treeNodeMap.set(value, node)\n if (!levelTreeNodeMap.has(level)) {\n levelTreeNodeMap.set(level, [])\n }\n levelTreeNodeMap.get(level)?.push(node)\n }\n if (level > maxLevel) {\n maxLevel = level\n }\n return siblings\n }\n const treeNodes: TreeNode[] = traverse(data)\n return {\n treeNodeMap,\n levelTreeNodeMap,\n maxLevel,\n treeNodes,\n }\n }\n\n function filter(query: string) {\n const keys = doFilter(query)\n if (keys) {\n expandedKeySet.value = keys\n }\n }\n\n function getChildren(node: TreeNodeData): TreeNodeData[] {\n return node[childrenKey.value]\n }\n\n function getKey(node: TreeNodeData): TreeKey {\n if (!node) {\n return ''\n }\n return node[valueKey.value]\n }\n\n function getDisabled(node: TreeNodeData): boolean {\n return node[disabledKey.value]\n }\n\n function getLabel(node: TreeNodeData): string {\n return node[labelKey.value]\n }\n\n function toggleExpand(node: TreeNode) {\n const expandedKeys = expandedKeySet.value\n if (expandedKeys.has(node.key)) {\n collapseNode(node)\n } else {\n expandNode(node)\n }\n }\n\n function setExpandedKeys(keys: TreeKey[]) {\n const expandedKeys = new Set<TreeKey>()\n const nodeMap = tree.value!.treeNodeMap\n\n expandedKeySet.value.forEach((key) => {\n const node = nodeMap.get(key)!\n expandedKeySet.value.delete(node.key)\n node.expanded = false\n })\n\n keys.forEach((k) => {\n let node = nodeMap.get(k)\n while (node && !expandedKeys.has(node.key)) {\n expandedKeys.add(node.key)\n node.expanded = true\n node = node.parent\n }\n })\n\n expandedKeySet.value = expandedKeys\n }\n\n function handleNodeClick(node: TreeNode, e: MouseEvent) {\n emit(NODE_CLICK, node.data, node, e)\n handleCurrentChange(node)\n if (props.expandOnClickNode) {\n toggleExpand(node)\n }\n if (\n props.showCheckbox &&\n (props.checkOnClickNode || (node.isLeaf && props.checkOnClickLeaf)) &&\n !node.disabled\n ) {\n toggleCheckbox(node, !isChecked(node), true)\n }\n }\n\n function handleNodeDrop(node: TreeNode, e: DragEvent) {\n emit(NODE_DROP, node.data, node, e)\n }\n\n function handleCurrentChange(node: TreeNode) {\n if (!isCurrent(node)) {\n currentKey.value = node.key\n emit(CURRENT_CHANGE, node.data, node)\n }\n }\n\n function handleNodeCheck(node: TreeNode, checked: CheckboxValueType) {\n toggleCheckbox(node, checked)\n }\n\n function expandNode(node: TreeNode) {\n const keySet = expandedKeySet.value\n if (tree.value && props.accordion) {\n // whether only one node among the same level can be expanded at one time\n const { treeNodeMap } = tree.value\n keySet.forEach((key) => {\n const treeNode = treeNodeMap.get(key)\n if (node && node.level === treeNode?.level) {\n keySet.delete(key)\n treeNode.expanded = false\n }\n })\n }\n keySet.add(node.key)\n const _node = getNode(node.key)\n if (_node) {\n _node.expanded = true\n emit(NODE_EXPAND, _node.data, _node)\n }\n }\n\n function collapseNode(node: TreeNode) {\n expandedKeySet.value.delete(node.key)\n const _node = getNode(node.key)\n if (_node) {\n _node.expanded = false\n emit(NODE_COLLAPSE, _node.data, _node)\n }\n }\n\n function isDisabled(node: TreeNode): boolean {\n return !!node.disabled\n }\n\n function isCurrent(node: TreeNode): boolean {\n const current = currentKey.value\n return current !== undefined && current === node.key\n }\n\n function getCurrentNode(): TreeNodeData | undefined {\n if (!currentKey.value) return undefined\n return tree.value?.treeNodeMap.get(currentKey.value)?.data\n }\n\n function getCurrentKey(): TreeKey | undefined {\n return currentKey.value\n }\n\n function setCurrentKey(key: TreeKey): void {\n currentKey.value = key\n }\n\n function setData(data: TreeData) {\n tree.value = createTree(data)\n }\n\n function getNode(data: TreeKey | TreeNodeData) {\n const key = isObject(data) ? getKey(data) : data\n return tree.value?.treeNodeMap.get(key)\n }\n\n function scrollToNode(key: TreeKey, strategy: ScrollStrategy = 'auto') {\n const node = getNode(key)\n if (node && listRef.value) {\n listRef.value.scrollToItem(flattenTree.value.indexOf(node), strategy)\n }\n }\n\n function scrollTo(offset: number) {\n listRef.value?.scrollTo(offset)\n }\n\n watch(\n () => props.currentNodeKey,\n (key) => {\n currentKey.value = key\n },\n {\n immediate: true,\n }\n )\n\n watch(\n () => props.defaultExpandedKeys,\n (key) => {\n expandedKeySet.value = new Set<TreeKey>(key)\n },\n {\n immediate: true,\n }\n )\n\n watch(\n () => props.data!,\n (data: TreeData) => {\n setData(data)\n },\n {\n immediate: true,\n }\n )\n\n return {\n tree,\n flattenTree,\n isNotEmpty,\n listRef,\n getKey,\n getChildren,\n toggleExpand,\n toggleCheckbox,\n isChecked,\n isIndeterminate,\n isDisabled,\n isCurrent,\n isForceHiddenExpandIcon,\n handleNodeClick,\n handleNodeDrop,\n handleNodeCheck,\n // expose\n getCurrentNode,\n getCurrentKey,\n setCurrentKey,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n filter,\n setData,\n getNode,\n expandNode,\n collapseNode,\n setExpandedKeys,\n scrollToNode,\n scrollTo,\n }\n}\n"],"names":["ref","shallowRef","useCheck","useFilter","computed","TreeOptionsEnum","NODE_CLICK","NODE_DROP","CURRENT_CHANGE","NODE_EXPAND","NODE_COLLAPSE","isObject","watch"],"mappings":"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"}
@@ -1,53 +1,48 @@
1
+ import type { TreeNode, TreeNodeProps } from './types';
1
2
  import type { CheckboxValueType } from '@element-plus/nightly/es/components/checkbox';
2
- import type { TreeNode } from './types';
3
- declare const __VLS_export: import("vue").DefineComponent<{
4
- readonly node: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => TreeNode) | (() => TreeNode) | ((new (...args: any[]) => TreeNode) | (() => TreeNode))[], unknown, unknown, () => import("@element-plus/nightly/es/utils").Mutable<{
3
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_WithDefaultsLocal<__VLS_TypePropsToOption<TreeNodeProps>, {
4
+ node: () => import("@element-plus/nightly/es/utils").Mutable<{
5
5
  readonly key: -1;
6
6
  readonly level: -1;
7
7
  readonly data: {};
8
- }>, boolean>;
9
- readonly expanded: BooleanConstructor;
10
- readonly checked: BooleanConstructor;
11
- readonly indeterminate: BooleanConstructor;
12
- readonly showCheckbox: BooleanConstructor;
13
- readonly disabled: BooleanConstructor;
14
- readonly current: BooleanConstructor;
15
- readonly hiddenExpandIcon: BooleanConstructor;
16
- readonly itemSize: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
17
- }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
+ }>;
9
+ itemSize: number;
10
+ }>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
11
  click: (node: TreeNode, e: MouseEvent) => void;
19
12
  drop: (node: TreeNode, e: DragEvent) => void;
20
13
  toggle: (node: TreeNode) => void;
21
14
  check: (node: TreeNode, checked: CheckboxValueType) => void;
22
- }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
23
- readonly node: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => TreeNode) | (() => TreeNode) | ((new (...args: any[]) => TreeNode) | (() => TreeNode))[], unknown, unknown, () => import("@element-plus/nightly/es/utils").Mutable<{
15
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaultsLocal<__VLS_TypePropsToOption<TreeNodeProps>, {
16
+ node: () => import("@element-plus/nightly/es/utils").Mutable<{
24
17
  readonly key: -1;
25
18
  readonly level: -1;
26
19
  readonly data: {};
27
- }>, boolean>;
28
- readonly expanded: BooleanConstructor;
29
- readonly checked: BooleanConstructor;
30
- readonly indeterminate: BooleanConstructor;
31
- readonly showCheckbox: BooleanConstructor;
32
- readonly disabled: BooleanConstructor;
33
- readonly current: BooleanConstructor;
34
- readonly hiddenExpandIcon: BooleanConstructor;
35
- readonly itemSize: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
36
- }>> & {
20
+ }>;
21
+ itemSize: number;
22
+ }>>> & {
37
23
  onClick?: ((node: TreeNode, e: MouseEvent) => any) | undefined;
38
24
  onDrop?: ((node: TreeNode, e: DragEvent) => any) | undefined;
39
25
  onToggle?: ((node: TreeNode) => any) | undefined;
40
26
  onCheck?: ((node: TreeNode, checked: CheckboxValueType) => any) | undefined;
41
27
  }, {
42
- readonly disabled: boolean;
43
- readonly expanded: boolean;
44
- readonly current: boolean;
45
- readonly itemSize: number;
46
- readonly indeterminate: boolean;
47
- readonly checked: boolean;
48
- readonly node: TreeNode;
49
- readonly showCheckbox: boolean;
50
- readonly hiddenExpandIcon: boolean;
28
+ itemSize: number;
29
+ node: TreeNode;
51
30
  }, {}>;
52
31
  declare const _default: typeof __VLS_export;
53
32
  export default _default;
33
+ type __VLS_TypePropsToOption<T> = {
34
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
35
+ type: import('vue').PropType<Required<T>[K]>;
36
+ } : {
37
+ type: import('vue').PropType<T[K]>;
38
+ required: true;
39
+ };
40
+ };
41
+ type __VLS_WithDefaultsLocal<P, D> = {
42
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_PrettifyLocal<P[K] & {
43
+ default: D[K];
44
+ }> : P[K];
45
+ };
46
+ type __VLS_PrettifyLocal<T> = {
47
+ [K in keyof T as K]: T[K];
48
+ } & {};
@@ -8,6 +8,7 @@ var iconsVue = require('@element-plus/icons-vue');
8
8
  var index$2 = require('../../checkbox/index.js');
9
9
  var treeNodeContent = require('./tree-node-content.js');
10
10
  var virtualTree = require('./virtual-tree.js');
11
+ var typescript = require('../../../utils/typescript.js');
11
12
  var index = require('../../../hooks/use-namespace/index.js');
12
13
  var shared = require('@vue/shared');
13
14
 
@@ -17,7 +18,17 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
17
18
  name: "ElTreeNode"
18
19
  },
19
20
  __name: "tree-node",
20
- props: virtualTree.treeNodeProps,
21
+ props: {
22
+ node: { type: Object, required: false, default: () => typescript.mutable(virtualTree.EMPTY_NODE) },
23
+ expanded: { type: Boolean, required: false },
24
+ checked: { type: Boolean, required: false },
25
+ indeterminate: { type: Boolean, required: false },
26
+ showCheckbox: { type: Boolean, required: false },
27
+ disabled: { type: Boolean, required: false },
28
+ current: { type: Boolean, required: false },
29
+ hiddenExpandIcon: { type: Boolean, required: false },
30
+ itemSize: { type: Number, required: false, default: 26 }
31
+ },
21
32
  emits: virtualTree.treeNodeEmits,
22
33
  setup(__props, { emit: __emit }) {
23
34
  const props = __props;
@@ -33,7 +44,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
33
44
  return (_a = tree == null ? void 0 : tree.props.icon) != null ? _a : iconsVue.CaretRight;
34
45
  });
35
46
  const getNodeClass = (node) => {
36
- const nodeClassFunc = tree == null ? void 0 : tree.props.props.class;
47
+ var _a;
48
+ const nodeClassFunc = (_a = tree == null ? void 0 : tree.props.props) == null ? void 0 : _a.class;
37
49
  if (!nodeClassFunc) return {};
38
50
  let className;
39
51
  if (shared.isFunction(nodeClassFunc)) {
@@ -70,18 +82,18 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
70
82
  ref: "node$",
71
83
  class: vue.normalizeClass([
72
84
  vue.unref(ns).b("node"),
73
- vue.unref(ns).is("expanded", _ctx.expanded),
74
- vue.unref(ns).is("current", _ctx.current),
75
- vue.unref(ns).is("focusable", !_ctx.disabled),
76
- vue.unref(ns).is("checked", !_ctx.disabled && _ctx.checked),
77
- getNodeClass(_ctx.node)
85
+ vue.unref(ns).is("expanded", __props.expanded),
86
+ vue.unref(ns).is("current", __props.current),
87
+ vue.unref(ns).is("focusable", !__props.disabled),
88
+ vue.unref(ns).is("checked", !__props.disabled && __props.checked),
89
+ getNodeClass(__props.node)
78
90
  ]),
79
91
  role: "treeitem",
80
92
  tabindex: "-1",
81
- "aria-expanded": _ctx.expanded,
82
- "aria-disabled": _ctx.disabled,
83
- "aria-checked": _ctx.checked,
84
- "data-key": (_a = _ctx.node) == null ? void 0 : _a.key,
93
+ "aria-expanded": __props.expanded,
94
+ "aria-disabled": __props.disabled,
95
+ "aria-checked": __props.checked,
96
+ "data-key": (_a = __props.node) == null ? void 0 : _a.key,
85
97
  onClick: vue.withModifiers(handleClick, ["stop"]),
86
98
  onContextmenu: handleContextMenu,
87
99
  onDragover: _cache[1] || (_cache[1] = vue.withModifiers(() => {
@@ -95,18 +107,18 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
95
107
  {
96
108
  class: vue.normalizeClass(vue.unref(ns).be("node", "content")),
97
109
  style: vue.normalizeStyle({
98
- paddingLeft: `${(_ctx.node.level - 1) * indent.value}px`,
99
- height: _ctx.itemSize + "px"
110
+ paddingLeft: `${(__props.node.level - 1) * indent.value}px`,
111
+ height: __props.itemSize + "px"
100
112
  })
101
113
  },
102
114
  [
103
115
  icon.value ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), {
104
116
  key: 0,
105
117
  class: vue.normalizeClass([
106
- vue.unref(ns).is("leaf", !!((_b = _ctx.node) == null ? void 0 : _b.isLeaf)),
107
- vue.unref(ns).is("hidden", _ctx.hiddenExpandIcon),
118
+ vue.unref(ns).is("leaf", !!((_b = __props.node) == null ? void 0 : _b.isLeaf)),
119
+ vue.unref(ns).is("hidden", __props.hiddenExpandIcon),
108
120
  {
109
- expanded: !((_c = _ctx.node) == null ? void 0 : _c.isLeaf) && _ctx.expanded
121
+ expanded: !((_c = __props.node) == null ? void 0 : _c.isLeaf) && __props.expanded
110
122
  },
111
123
  vue.unref(ns).be("node", "expand-icon")
112
124
  ]),
@@ -118,17 +130,17 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
118
130
  _: 1
119
131
  /* STABLE */
120
132
  }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
121
- _ctx.showCheckbox ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ElCheckbox), {
133
+ __props.showCheckbox ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ElCheckbox), {
122
134
  key: 1,
123
- "model-value": _ctx.checked,
124
- indeterminate: _ctx.indeterminate,
125
- disabled: _ctx.disabled,
135
+ "model-value": __props.checked,
136
+ indeterminate: __props.indeterminate,
137
+ disabled: __props.disabled,
126
138
  onChange: handleCheckChange,
127
139
  onClick: _cache[0] || (_cache[0] = vue.withModifiers(() => {
128
140
  }, ["stop"]))
129
141
  }, null, 8, ["model-value", "indeterminate", "disabled"])) : vue.createCommentVNode("v-if", true),
130
142
  vue.createVNode(vue.unref(treeNodeContent.default), {
131
- node: { ..._ctx.node, expanded: _ctx.expanded }
143
+ node: { ...__props.node, expanded: __props.expanded }
132
144
  }, null, 8, ["node"])
133
145
  ],
134
146
  6
@@ -1 +1 @@
1
- {"version":3,"file":"tree-node.vue2.js","sources":["../../../../../../packages/components/tree-v2/src/tree-node.vue"],"sourcesContent":["<template>\n <div\n ref=\"node$\"\n :class=\"[\n ns.b('node'),\n ns.is('expanded', expanded),\n ns.is('current', current),\n ns.is('focusable', !disabled),\n ns.is('checked', !disabled && checked),\n getNodeClass(node),\n ]\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"disabled\"\n :aria-checked=\"checked\"\n :data-key=\"node?.key\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n @dragover.prevent\n @dragenter.prevent\n @drop.stop=\"handleDrop\"\n >\n <div\n :class=\"ns.be('node', 'content')\"\n :style=\"{\n paddingLeft: `${(node.level - 1) * indent}px`,\n height: itemSize + 'px',\n }\"\n >\n <el-icon\n v-if=\"icon\"\n :class=\"[\n ns.is('leaf', !!node?.isLeaf),\n ns.is('hidden', hiddenExpandIcon),\n {\n expanded: !node?.isLeaf && expanded,\n },\n ns.be('node', 'expand-icon'),\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"icon\" />\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"checked\"\n :indeterminate=\"indeterminate\"\n :disabled=\"disabled\"\n @change=\"handleCheckChange\"\n @click.stop\n />\n <el-node-content :node=\"{ ...node, expanded }\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject } from 'vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { CaretRight } from '@element-plus/icons-vue'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { useNamespace } from '@element-plus/hooks'\nimport { isFunction, isString } from '@element-plus/utils'\nimport ElNodeContent from './tree-node-content'\nimport {\n NODE_CONTEXTMENU,\n ROOT_TREE_INJECTION_KEY,\n treeNodeEmits,\n treeNodeProps,\n} from './virtual-tree'\n\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\nimport type { TreeNode } from './types'\n\ndefineOptions({\n name: 'ElTreeNode',\n})\n\nconst props = defineProps(treeNodeProps)\nconst emit = defineEmits(treeNodeEmits)\n\nconst tree = inject(ROOT_TREE_INJECTION_KEY)\nconst ns = useNamespace('tree')\n\nconst indent = computed(() => tree?.props.indent ?? 16)\nconst icon = computed(() => tree?.props.icon ?? CaretRight)\n\nconst getNodeClass = (node: TreeNode) => {\n const nodeClassFunc = tree?.props.props.class\n if (!nodeClassFunc) return {}\n\n let className\n if (isFunction(nodeClassFunc)) {\n const { data } = node\n className = nodeClassFunc(data, node)\n } else {\n className = nodeClassFunc\n }\n\n return isString(className) ? { [className]: true } : className\n}\n\nconst handleClick = (e: MouseEvent) => {\n emit('click', props.node, e)\n}\nconst handleDrop = (e: DragEvent) => {\n emit('drop', props.node, e)\n}\nconst handleExpandIconClick = () => {\n emit('toggle', props.node)\n}\nconst handleCheckChange = (value: CheckboxValueType) => {\n emit('check', props.node, value)\n}\n\nconst handleContextMenu = (event: Event) => {\n if (tree?.instance?.vnode?.props?.['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree?.ctx.emit(NODE_CONTEXTMENU, event, props.node?.data, props.node)\n}\n</script>\n"],"names":["inject","ROOT_TREE_INJECTION_KEY","useNamespace","computed","CaretRight","isFunction","isString","NODE_CONTEXTMENU","_createElementBlock","_normalizeClass","_unref","expanded","current","disabled","checked","node","_createElementVNode","_normalizeStyle","itemSize","_createBlock","ElIcon","hiddenExpandIcon","_openBlock","_resolveDynamicComponent","showCheckbox","ElCheckbox","indeterminate","_createVNode","ElNodeContent"],"mappings":"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"}
1
+ {"version":3,"file":"tree-node.vue2.js","sources":["../../../../../../packages/components/tree-v2/src/tree-node.vue"],"sourcesContent":["<template>\n <div\n ref=\"node$\"\n :class=\"[\n ns.b('node'),\n ns.is('expanded', expanded),\n ns.is('current', current),\n ns.is('focusable', !disabled),\n ns.is('checked', !disabled && checked),\n getNodeClass(node),\n ]\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"disabled\"\n :aria-checked=\"checked\"\n :data-key=\"node?.key\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n @dragover.prevent\n @dragenter.prevent\n @drop.stop=\"handleDrop\"\n >\n <div\n :class=\"ns.be('node', 'content')\"\n :style=\"{\n paddingLeft: `${(node.level - 1) * indent}px`,\n height: itemSize + 'px',\n }\"\n >\n <el-icon\n v-if=\"icon\"\n :class=\"[\n ns.is('leaf', !!node?.isLeaf),\n ns.is('hidden', hiddenExpandIcon),\n {\n expanded: !node?.isLeaf && expanded,\n },\n ns.be('node', 'expand-icon'),\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"icon\" />\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"checked\"\n :indeterminate=\"indeterminate\"\n :disabled=\"disabled\"\n @change=\"handleCheckChange\"\n @click.stop\n />\n <el-node-content :node=\"{ ...node, expanded }\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject } from 'vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { CaretRight } from '@element-plus/icons-vue'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { useNamespace } from '@element-plus/hooks'\nimport { isFunction, isString, mutable } from '@element-plus/utils'\nimport ElNodeContent from './tree-node-content'\nimport {\n EMPTY_NODE,\n NODE_CONTEXTMENU,\n ROOT_TREE_INJECTION_KEY,\n treeNodeEmits,\n} from './virtual-tree'\n\nimport type { TreeNode, TreeNodeProps } from './types'\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\n\ndefineOptions({\n name: 'ElTreeNode',\n})\n\nconst props = withDefaults(defineProps<TreeNodeProps>(), {\n node: () => mutable(EMPTY_NODE),\n itemSize: 26,\n})\nconst emit = defineEmits(treeNodeEmits)\n\nconst tree = inject(ROOT_TREE_INJECTION_KEY)\nconst ns = useNamespace('tree')\n\nconst indent = computed(() => tree?.props.indent ?? 16)\nconst icon = computed(() => tree?.props.icon ?? CaretRight)\n\nconst getNodeClass = (node: TreeNode) => {\n const nodeClassFunc = tree?.props.props?.class\n if (!nodeClassFunc) return {}\n\n let className\n if (isFunction(nodeClassFunc)) {\n const { data } = node\n className = nodeClassFunc(data, node)\n } else {\n className = nodeClassFunc\n }\n\n return isString(className) ? { [className]: true } : className\n}\n\nconst handleClick = (e: MouseEvent) => {\n emit('click', props.node, e)\n}\nconst handleDrop = (e: DragEvent) => {\n emit('drop', props.node, e)\n}\nconst handleExpandIconClick = () => {\n emit('toggle', props.node)\n}\nconst handleCheckChange = (value: CheckboxValueType) => {\n emit('check', props.node, value)\n}\n\nconst handleContextMenu = (event: Event) => {\n if (tree?.instance?.vnode?.props?.['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree?.ctx.emit(NODE_CONTEXTMENU, event, props.node?.data, props.node)\n}\n</script>\n"],"names":["inject","ROOT_TREE_INJECTION_KEY","useNamespace","computed","CaretRight","isFunction","isString","NODE_CONTEXTMENU","_createElementBlock","_normalizeClass","_unref","_createElementVNode","_normalizeStyle","_createBlock","ElIcon","_openBlock","_resolveDynamicComponent","ElCheckbox","_createVNode","ElNodeContent"],"mappings":"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"}