element-pe 2.2.56 → 2.2.58

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 (641) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +120 -43
  3. package/dist/index.full.min.js +21 -21
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +22 -22
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +120 -43
  8. package/dist/locale/fa.js +20 -20
  9. package/dist/locale/fa.min.js +1 -1
  10. package/dist/locale/fa.min.js.map +1 -1
  11. package/dist/locale/fa.min.mjs +1 -1
  12. package/dist/locale/fa.min.mjs.map +1 -1
  13. package/dist/locale/fa.mjs +20 -20
  14. package/es/components/autocomplete/index.mjs +2 -2
  15. package/es/components/autocomplete/src/autocomplete.mjs +362 -82
  16. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  17. package/es/components/autocomplete/src/autocomplete2.mjs +82 -362
  18. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  19. package/es/components/avatar/index.mjs +2 -2
  20. package/es/components/avatar/src/avatar.mjs +35 -76
  21. package/es/components/avatar/src/avatar.mjs.map +1 -1
  22. package/es/components/avatar/src/avatar2.mjs +76 -35
  23. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  24. package/es/components/badge/index.mjs +2 -2
  25. package/es/components/badge/src/badge.mjs +59 -17
  26. package/es/components/badge/src/badge.mjs.map +1 -1
  27. package/es/components/badge/src/badge2.mjs +17 -59
  28. package/es/components/badge/src/badge2.mjs.map +1 -1
  29. package/es/components/breadcrumb/index.mjs +4 -4
  30. package/es/components/breadcrumb/src/breadcrumb-item.mjs +56 -11
  31. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  32. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +11 -56
  33. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  34. package/es/components/breadcrumb/src/breadcrumb.mjs +11 -36
  35. package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  36. package/es/components/breadcrumb/src/breadcrumb2.mjs +36 -11
  37. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  38. package/es/components/calendar/src/calendar2.mjs +1 -1
  39. package/es/components/calendar/src/date-table.mjs +87 -33
  40. package/es/components/calendar/src/date-table.mjs.map +1 -1
  41. package/es/components/calendar/src/date-table2.mjs +33 -87
  42. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  43. package/es/components/calendar/src/use-date-table.mjs +1 -1
  44. package/es/components/carousel/index.d.ts +10 -0
  45. package/es/components/carousel/src/carousel-item.vue.d.ts +1 -0
  46. package/es/components/carousel/src/carousel-item2.mjs +7 -1
  47. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  48. package/es/components/carousel/src/carousel.vue.d.ts +8 -0
  49. package/es/components/carousel/src/carousel2.mjs +7 -2
  50. package/es/components/carousel/src/carousel2.mjs.map +1 -1
  51. package/es/components/carousel/src/constants.d.ts +1 -0
  52. package/es/components/carousel/src/constants.mjs.map +1 -1
  53. package/es/components/carousel/src/use-carousel-item.d.ts +1 -0
  54. package/es/components/carousel/src/use-carousel-item.mjs +7 -5
  55. package/es/components/carousel/src/use-carousel-item.mjs.map +1 -1
  56. package/es/components/carousel/src/use-carousel.d.ts +8 -0
  57. package/es/components/carousel/src/use-carousel.mjs +21 -1
  58. package/es/components/carousel/src/use-carousel.mjs.map +1 -1
  59. package/es/components/cascader/index.d.ts +16 -16
  60. package/es/components/cascader/index.mjs +2 -2
  61. package/es/components/cascader/src/cascader.mjs +622 -63
  62. package/es/components/cascader/src/cascader.mjs.map +1 -1
  63. package/es/components/cascader/src/cascader.vue.d.ts +8 -8
  64. package/es/components/cascader/src/cascader2.mjs +63 -622
  65. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  66. package/es/components/check-tag/index.d.ts +1 -0
  67. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  68. package/es/components/check-tag/src/check-tag.vue.d.ts +1 -0
  69. package/es/components/check-tag/src/check-tag2.mjs +3 -2
  70. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  71. package/es/components/col/index.mjs +2 -2
  72. package/es/components/col/src/col.mjs +66 -43
  73. package/es/components/col/src/col.mjs.map +1 -1
  74. package/es/components/col/src/col2.mjs +43 -66
  75. package/es/components/col/src/col2.mjs.map +1 -1
  76. package/es/components/collapse/index.mjs +2 -2
  77. package/es/components/collapse/src/collapse-item.mjs +14 -96
  78. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  79. package/es/components/collapse/src/collapse-item2.mjs +96 -14
  80. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  81. package/es/components/collection/src/collection.mjs +9 -5
  82. package/es/components/collection/src/collection.mjs.map +1 -1
  83. package/es/components/descriptions/index.mjs +2 -2
  84. package/es/components/descriptions/src/description.mjs +120 -27
  85. package/es/components/descriptions/src/description.mjs.map +1 -1
  86. package/es/components/descriptions/src/description2.mjs +27 -120
  87. package/es/components/descriptions/src/description2.mjs.map +1 -1
  88. package/es/components/dialog/index.mjs +2 -2
  89. package/es/components/dialog/src/dialog.mjs +174 -73
  90. package/es/components/dialog/src/dialog.mjs.map +1 -1
  91. package/es/components/dialog/src/dialog2.mjs +73 -174
  92. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  93. package/es/components/divider/index.mjs +2 -2
  94. package/es/components/divider/src/divider.mjs +17 -35
  95. package/es/components/divider/src/divider.mjs.map +1 -1
  96. package/es/components/divider/src/divider2.mjs +35 -17
  97. package/es/components/divider/src/divider2.mjs.map +1 -1
  98. package/es/components/drawer/index.mjs +2 -2
  99. package/es/components/drawer/src/drawer.mjs +25 -186
  100. package/es/components/drawer/src/drawer.mjs.map +1 -1
  101. package/es/components/drawer/src/drawer2.mjs +186 -25
  102. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  103. package/es/components/dropdown/index.mjs +2 -2
  104. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  105. package/es/components/dropdown/src/dropdown-item.mjs +1 -1
  106. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  107. package/es/components/dropdown/src/dropdown.mjs +105 -310
  108. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  109. package/es/components/dropdown/src/dropdown2.mjs +310 -105
  110. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  111. package/es/components/empty/src/empty.mjs.map +1 -1
  112. package/es/components/form/index.mjs +2 -2
  113. package/es/components/form/src/form.mjs +57 -150
  114. package/es/components/form/src/form.mjs.map +1 -1
  115. package/es/components/form/src/form2.mjs +150 -57
  116. package/es/components/form/src/form2.mjs.map +1 -1
  117. package/es/components/icon/index.mjs +2 -2
  118. package/es/components/icon/src/icon.mjs +8 -36
  119. package/es/components/icon/src/icon.mjs.map +1 -1
  120. package/es/components/icon/src/icon2.mjs +36 -8
  121. package/es/components/icon/src/icon2.mjs.map +1 -1
  122. package/es/components/image/index.mjs +2 -2
  123. package/es/components/image/src/image.mjs +65 -226
  124. package/es/components/image/src/image.mjs.map +1 -1
  125. package/es/components/image/src/image2.mjs +226 -65
  126. package/es/components/image/src/image2.mjs.map +1 -1
  127. package/es/components/image-viewer/index.mjs +2 -2
  128. package/es/components/image-viewer/src/image-viewer.mjs +38 -401
  129. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  130. package/es/components/image-viewer/src/image-viewer2.mjs +401 -38
  131. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  132. package/es/components/index.mjs +39 -39
  133. package/es/components/input/index.mjs +2 -2
  134. package/es/components/input/src/input.mjs +458 -108
  135. package/es/components/input/src/input.mjs.map +1 -1
  136. package/es/components/input/src/input2.mjs +108 -458
  137. package/es/components/input/src/input2.mjs.map +1 -1
  138. package/es/components/input-number/src/input-number2.mjs +4 -1
  139. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  140. package/es/components/link/index.mjs +2 -2
  141. package/es/components/link/src/link.mjs +21 -50
  142. package/es/components/link/src/link.mjs.map +1 -1
  143. package/es/components/link/src/link2.mjs +50 -21
  144. package/es/components/link/src/link2.mjs.map +1 -1
  145. package/es/components/loading/src/service.mjs +2 -2
  146. package/es/components/loading/src/service.mjs.map +1 -1
  147. package/es/components/menu/index.mjs +4 -4
  148. package/es/components/menu/src/menu-item-group.mjs +4 -35
  149. package/es/components/menu/src/menu-item-group.mjs.map +1 -1
  150. package/es/components/menu/src/menu-item-group2.mjs +35 -4
  151. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  152. package/es/components/menu/src/menu-item.mjs +14 -97
  153. package/es/components/menu/src/menu-item.mjs.map +1 -1
  154. package/es/components/menu/src/menu-item2.mjs +97 -14
  155. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  156. package/es/components/menu/src/menu.mjs +1 -1
  157. package/es/components/menu/src/menu.mjs.map +1 -1
  158. package/es/components/notification/index.mjs +1 -1
  159. package/es/components/notification/src/notification.mjs +149 -69
  160. package/es/components/notification/src/notification.mjs.map +1 -1
  161. package/es/components/notification/src/notification2.mjs +69 -149
  162. package/es/components/notification/src/notification2.mjs.map +1 -1
  163. package/es/components/notification/src/notify.mjs +2 -2
  164. package/es/components/page-header/src/page-header.mjs.map +1 -1
  165. package/es/components/pagination/src/components/next.mjs +38 -19
  166. package/es/components/pagination/src/components/next.mjs.map +1 -1
  167. package/es/components/pagination/src/components/next2.mjs +19 -38
  168. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  169. package/es/components/pagination/src/components/pager.mjs +17 -216
  170. package/es/components/pagination/src/components/pager.mjs.map +1 -1
  171. package/es/components/pagination/src/components/pager2.mjs +216 -17
  172. package/es/components/pagination/src/components/pager2.mjs.map +1 -1
  173. package/es/components/pagination/src/components/sizes.mjs +70 -22
  174. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  175. package/es/components/pagination/src/components/sizes2.mjs +22 -70
  176. package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
  177. package/es/components/pagination/src/components/total.mjs +7 -28
  178. package/es/components/pagination/src/components/total.mjs.map +1 -1
  179. package/es/components/pagination/src/components/total2.mjs +28 -7
  180. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  181. package/es/components/pagination/src/pagination.mjs +4 -4
  182. package/es/components/popconfirm/index.mjs +2 -2
  183. package/es/components/popconfirm/src/popconfirm.mjs +110 -47
  184. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  185. package/es/components/popconfirm/src/popconfirm2.mjs +47 -110
  186. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  187. package/es/components/popover/src/popover.mjs +1 -1
  188. package/es/components/popper/index.mjs +4 -4
  189. package/es/components/popper/src/arrow.mjs +39 -8
  190. package/es/components/popper/src/arrow.mjs.map +1 -1
  191. package/es/components/popper/src/arrow2.mjs +8 -39
  192. package/es/components/popper/src/arrow2.mjs.map +1 -1
  193. package/es/components/popper/src/popper.mjs +32 -25
  194. package/es/components/popper/src/popper.mjs.map +1 -1
  195. package/es/components/popper/src/popper2.mjs +25 -32
  196. package/es/components/popper/src/popper2.mjs.map +1 -1
  197. package/es/components/progress/src/progress.mjs.map +1 -1
  198. package/es/components/radio/index.mjs +4 -4
  199. package/es/components/radio/src/radio-button.mjs +1 -1
  200. package/es/components/radio/src/radio-group.mjs +36 -70
  201. package/es/components/radio/src/radio-group.mjs.map +1 -1
  202. package/es/components/radio/src/radio-group2.mjs +70 -36
  203. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  204. package/es/components/radio/src/radio.mjs +30 -71
  205. package/es/components/radio/src/radio.mjs.map +1 -1
  206. package/es/components/radio/src/radio2.mjs +71 -30
  207. package/es/components/radio/src/radio2.mjs.map +1 -1
  208. package/es/components/rate/index.mjs +2 -2
  209. package/es/components/rate/src/rate.mjs +87 -257
  210. package/es/components/rate/src/rate.mjs.map +1 -1
  211. package/es/components/rate/src/rate2.mjs +257 -87
  212. package/es/components/rate/src/rate2.mjs.map +1 -1
  213. package/es/components/result/src/result2.mjs.map +1 -1
  214. package/es/components/row/index.mjs +2 -2
  215. package/es/components/row/src/row.mjs +30 -45
  216. package/es/components/row/src/row.mjs.map +1 -1
  217. package/es/components/row/src/row2.mjs +45 -30
  218. package/es/components/row/src/row2.mjs.map +1 -1
  219. package/es/components/scrollbar/index.mjs +3 -3
  220. package/es/components/scrollbar/src/bar2.mjs +1 -1
  221. package/es/components/scrollbar/src/scrollbar.mjs +46 -176
  222. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  223. package/es/components/scrollbar/src/scrollbar2.mjs +176 -46
  224. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  225. package/es/components/scrollbar/src/thumb.mjs +11 -134
  226. package/es/components/scrollbar/src/thumb.mjs.map +1 -1
  227. package/es/components/scrollbar/src/thumb2.mjs +134 -11
  228. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  229. package/es/components/select/src/useSelect.mjs +4 -0
  230. package/es/components/select/src/useSelect.mjs.map +1 -1
  231. package/es/components/select-v2/src/useSelect.mjs +1 -1
  232. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  233. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  234. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  235. package/es/components/slider/index.mjs +2 -2
  236. package/es/components/slider/src/slider.mjs +91 -233
  237. package/es/components/slider/src/slider.mjs.map +1 -1
  238. package/es/components/slider/src/slider2.mjs +233 -91
  239. package/es/components/slider/src/slider2.mjs.map +1 -1
  240. package/es/components/statistic/index.mjs +2 -2
  241. package/es/components/statistic/src/statistic.mjs +70 -25
  242. package/es/components/statistic/src/statistic.mjs.map +1 -1
  243. package/es/components/statistic/src/statistic2.mjs +25 -70
  244. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  245. package/es/components/steps/index.d.ts +2 -0
  246. package/es/components/steps/src/item.vue.d.ts +1 -0
  247. package/es/components/steps/src/item2.mjs +9 -6
  248. package/es/components/steps/src/item2.mjs.map +1 -1
  249. package/es/components/switch/index.mjs +2 -2
  250. package/es/components/switch/src/switch.mjs +243 -88
  251. package/es/components/switch/src/switch.mjs.map +1 -1
  252. package/es/components/switch/src/switch2.mjs +88 -243
  253. package/es/components/switch/src/switch2.mjs.map +1 -1
  254. package/es/components/table/src/table-header/event-helper.mjs +6 -2
  255. package/es/components/table/src/table-header/event-helper.mjs.map +1 -1
  256. package/es/components/table-v2/src/renderers/cell.mjs +1 -1
  257. package/es/components/table-v2/src/renderers/cell.mjs.map +1 -1
  258. package/es/components/tabs/index.mjs +3 -3
  259. package/es/components/tabs/src/tab-bar.mjs +7 -75
  260. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  261. package/es/components/tabs/src/tab-bar2.mjs +75 -7
  262. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  263. package/es/components/tabs/src/tab-nav.mjs +1 -1
  264. package/es/components/tabs/src/tab-pane.mjs +73 -14
  265. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  266. package/es/components/tabs/src/tab-pane2.mjs +14 -73
  267. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  268. package/es/components/tag/index.d.ts +8 -8
  269. package/es/components/tag/src/tag.d.ts +2 -2
  270. package/es/components/tag/src/tag.mjs +2 -2
  271. package/es/components/tag/src/tag.mjs.map +1 -1
  272. package/es/components/tag/src/tag.vue.d.ts +8 -8
  273. package/es/components/tag/src/tag2.mjs +3 -3
  274. package/es/components/tag/src/tag2.mjs.map +1 -1
  275. package/es/components/time-select/src/time-select.mjs.map +1 -1
  276. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  277. package/es/components/timeline/index.d.ts +38 -0
  278. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  279. package/es/components/timeline/src/timeline-item.vue.d.ts +19 -0
  280. package/es/components/timeline/src/timeline-item2.mjs +9 -7
  281. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  282. package/es/components/tooltip/src/tooltip.mjs +2 -2
  283. package/es/components/tooltip/src/tooltip2.mjs +1 -1
  284. package/es/components/tooltip-v2/index.mjs +2 -2
  285. package/es/components/tooltip-v2/src/arrow.mjs +22 -37
  286. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  287. package/es/components/tooltip-v2/src/arrow2.mjs +37 -22
  288. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  289. package/es/components/tooltip-v2/src/root.mjs +17 -82
  290. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  291. package/es/components/tooltip-v2/src/root2.mjs +82 -17
  292. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  293. package/es/components/tooltip-v2/src/tooltip.mjs +2 -2
  294. package/es/components/tooltip-v2/src/tooltip2.mjs +4 -4
  295. package/es/components/transfer/index.mjs +2 -2
  296. package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
  297. package/es/components/transfer/src/transfer-panel.mjs +1 -1
  298. package/es/components/transfer/src/transfer.mjs +69 -162
  299. package/es/components/transfer/src/transfer.mjs.map +1 -1
  300. package/es/components/transfer/src/transfer2.mjs +162 -69
  301. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  302. package/es/components/tree/index.d.ts +2 -2
  303. package/es/components/tree/src/model/useDragNode.mjs +2 -2
  304. package/es/components/tree/src/model/useDragNode.mjs.map +1 -1
  305. package/es/components/tree/src/tree.type.d.ts +1 -1
  306. package/es/components/tree/src/tree.vue.d.ts +1 -1
  307. package/es/components/tree-select/src/tree-select.mjs.map +1 -1
  308. package/es/components/tree-select/src/tree.mjs +20 -3
  309. package/es/components/tree-select/src/tree.mjs.map +1 -1
  310. package/es/components/upload/index.mjs +1 -1
  311. package/es/components/upload/src/upload-content2.mjs +5 -1
  312. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  313. package/es/components/upload/src/upload-list.mjs +26 -177
  314. package/es/components/upload/src/upload-list.mjs.map +1 -1
  315. package/es/components/upload/src/upload-list2.mjs +177 -26
  316. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  317. package/es/components/upload/src/upload2.mjs +1 -1
  318. package/es/index.mjs +39 -39
  319. package/es/locale/lang/fa.mjs +20 -20
  320. package/es/locale/lang/fa.mjs.map +1 -1
  321. package/es/utils/types.mjs +1 -1
  322. package/es/utils/types.mjs.map +1 -1
  323. package/lib/components/autocomplete/index.js +2 -2
  324. package/lib/components/autocomplete/src/autocomplete.js +361 -82
  325. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  326. package/lib/components/autocomplete/src/autocomplete2.js +82 -361
  327. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  328. package/lib/components/avatar/index.js +2 -2
  329. package/lib/components/avatar/src/avatar.js +35 -75
  330. package/lib/components/avatar/src/avatar.js.map +1 -1
  331. package/lib/components/avatar/src/avatar2.js +75 -35
  332. package/lib/components/avatar/src/avatar2.js.map +1 -1
  333. package/lib/components/badge/index.js +2 -2
  334. package/lib/components/badge/src/badge.js +59 -17
  335. package/lib/components/badge/src/badge.js.map +1 -1
  336. package/lib/components/badge/src/badge2.js +17 -59
  337. package/lib/components/badge/src/badge2.js.map +1 -1
  338. package/lib/components/breadcrumb/index.js +4 -4
  339. package/lib/components/breadcrumb/src/breadcrumb-item.js +56 -11
  340. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  341. package/lib/components/breadcrumb/src/breadcrumb-item2.js +11 -56
  342. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  343. package/lib/components/breadcrumb/src/breadcrumb.js +11 -36
  344. package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
  345. package/lib/components/breadcrumb/src/breadcrumb2.js +36 -11
  346. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  347. package/lib/components/calendar/src/calendar2.js +1 -1
  348. package/lib/components/calendar/src/date-table.js +87 -37
  349. package/lib/components/calendar/src/date-table.js.map +1 -1
  350. package/lib/components/calendar/src/date-table2.js +37 -87
  351. package/lib/components/calendar/src/date-table2.js.map +1 -1
  352. package/lib/components/calendar/src/use-date-table.js +1 -1
  353. package/lib/components/carousel/index.d.ts +10 -0
  354. package/lib/components/carousel/src/carousel-item.vue.d.ts +1 -0
  355. package/lib/components/carousel/src/carousel-item2.js +7 -1
  356. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  357. package/lib/components/carousel/src/carousel.vue.d.ts +8 -0
  358. package/lib/components/carousel/src/carousel2.js +7 -2
  359. package/lib/components/carousel/src/carousel2.js.map +1 -1
  360. package/lib/components/carousel/src/constants.d.ts +1 -0
  361. package/lib/components/carousel/src/constants.js.map +1 -1
  362. package/lib/components/carousel/src/use-carousel-item.d.ts +1 -0
  363. package/lib/components/carousel/src/use-carousel-item.js +7 -5
  364. package/lib/components/carousel/src/use-carousel-item.js.map +1 -1
  365. package/lib/components/carousel/src/use-carousel.d.ts +8 -0
  366. package/lib/components/carousel/src/use-carousel.js +21 -1
  367. package/lib/components/carousel/src/use-carousel.js.map +1 -1
  368. package/lib/components/cascader/index.d.ts +16 -16
  369. package/lib/components/cascader/index.js +2 -2
  370. package/lib/components/cascader/src/cascader.js +622 -64
  371. package/lib/components/cascader/src/cascader.js.map +1 -1
  372. package/lib/components/cascader/src/cascader.vue.d.ts +8 -8
  373. package/lib/components/cascader/src/cascader2.js +64 -622
  374. package/lib/components/cascader/src/cascader2.js.map +1 -1
  375. package/lib/components/check-tag/index.d.ts +1 -0
  376. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  377. package/lib/components/check-tag/src/check-tag.vue.d.ts +1 -0
  378. package/lib/components/check-tag/src/check-tag2.js +2 -1
  379. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  380. package/lib/components/col/index.js +2 -2
  381. package/lib/components/col/src/col.js +66 -43
  382. package/lib/components/col/src/col.js.map +1 -1
  383. package/lib/components/col/src/col2.js +43 -66
  384. package/lib/components/col/src/col2.js.map +1 -1
  385. package/lib/components/collapse/index.js +2 -2
  386. package/lib/components/collapse/src/collapse-item.js +14 -96
  387. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  388. package/lib/components/collapse/src/collapse-item2.js +96 -14
  389. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  390. package/lib/components/collection/src/collection.js +9 -5
  391. package/lib/components/collection/src/collection.js.map +1 -1
  392. package/lib/components/descriptions/index.js +2 -2
  393. package/lib/components/descriptions/src/description.js +120 -27
  394. package/lib/components/descriptions/src/description.js.map +1 -1
  395. package/lib/components/descriptions/src/description2.js +27 -120
  396. package/lib/components/descriptions/src/description2.js.map +1 -1
  397. package/lib/components/dialog/index.js +2 -2
  398. package/lib/components/dialog/src/dialog.js +174 -74
  399. package/lib/components/dialog/src/dialog.js.map +1 -1
  400. package/lib/components/dialog/src/dialog2.js +74 -174
  401. package/lib/components/dialog/src/dialog2.js.map +1 -1
  402. package/lib/components/divider/index.js +2 -2
  403. package/lib/components/divider/src/divider.js +17 -35
  404. package/lib/components/divider/src/divider.js.map +1 -1
  405. package/lib/components/divider/src/divider2.js +35 -17
  406. package/lib/components/divider/src/divider2.js.map +1 -1
  407. package/lib/components/drawer/index.js +2 -2
  408. package/lib/components/drawer/src/drawer.js +26 -186
  409. package/lib/components/drawer/src/drawer.js.map +1 -1
  410. package/lib/components/drawer/src/drawer2.js +186 -26
  411. package/lib/components/drawer/src/drawer2.js.map +1 -1
  412. package/lib/components/dropdown/index.js +2 -2
  413. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  414. package/lib/components/dropdown/src/dropdown-item.js +1 -1
  415. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  416. package/lib/components/dropdown/src/dropdown.js +114 -310
  417. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  418. package/lib/components/dropdown/src/dropdown2.js +310 -114
  419. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  420. package/lib/components/empty/src/empty.js.map +1 -1
  421. package/lib/components/form/index.js +2 -2
  422. package/lib/components/form/src/form.js +57 -149
  423. package/lib/components/form/src/form.js.map +1 -1
  424. package/lib/components/form/src/form2.js +149 -57
  425. package/lib/components/form/src/form2.js.map +1 -1
  426. package/lib/components/icon/index.js +2 -2
  427. package/lib/components/icon/src/icon.js +8 -36
  428. package/lib/components/icon/src/icon.js.map +1 -1
  429. package/lib/components/icon/src/icon2.js +36 -8
  430. package/lib/components/icon/src/icon2.js.map +1 -1
  431. package/lib/components/image/index.js +2 -2
  432. package/lib/components/image/src/image.js +65 -225
  433. package/lib/components/image/src/image.js.map +1 -1
  434. package/lib/components/image/src/image2.js +225 -65
  435. package/lib/components/image/src/image2.js.map +1 -1
  436. package/lib/components/image-viewer/index.js +2 -2
  437. package/lib/components/image-viewer/src/image-viewer.js +39 -401
  438. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  439. package/lib/components/image-viewer/src/image-viewer2.js +401 -39
  440. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  441. package/lib/components/index.js +39 -39
  442. package/lib/components/input/index.js +2 -2
  443. package/lib/components/input/src/input.js +457 -108
  444. package/lib/components/input/src/input.js.map +1 -1
  445. package/lib/components/input/src/input2.js +108 -457
  446. package/lib/components/input/src/input2.js.map +1 -1
  447. package/lib/components/input-number/src/input-number2.js +3 -0
  448. package/lib/components/input-number/src/input-number2.js.map +1 -1
  449. package/lib/components/link/index.js +2 -2
  450. package/lib/components/link/src/link.js +22 -50
  451. package/lib/components/link/src/link.js.map +1 -1
  452. package/lib/components/link/src/link2.js +50 -22
  453. package/lib/components/link/src/link2.js.map +1 -1
  454. package/lib/components/loading/src/service.js +2 -2
  455. package/lib/components/loading/src/service.js.map +1 -1
  456. package/lib/components/menu/index.js +4 -4
  457. package/lib/components/menu/src/menu-item-group.js +4 -35
  458. package/lib/components/menu/src/menu-item-group.js.map +1 -1
  459. package/lib/components/menu/src/menu-item-group2.js +35 -4
  460. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  461. package/lib/components/menu/src/menu-item.js +15 -97
  462. package/lib/components/menu/src/menu-item.js.map +1 -1
  463. package/lib/components/menu/src/menu-item2.js +97 -15
  464. package/lib/components/menu/src/menu-item2.js.map +1 -1
  465. package/lib/components/menu/src/menu.js +1 -1
  466. package/lib/components/menu/src/menu.js.map +1 -1
  467. package/lib/components/notification/index.js +1 -1
  468. package/lib/components/notification/src/notification.js +148 -70
  469. package/lib/components/notification/src/notification.js.map +1 -1
  470. package/lib/components/notification/src/notification2.js +70 -148
  471. package/lib/components/notification/src/notification2.js.map +1 -1
  472. package/lib/components/notification/src/notify.js +2 -2
  473. package/lib/components/page-header/src/page-header.js.map +1 -1
  474. package/lib/components/pagination/src/components/next.js +38 -19
  475. package/lib/components/pagination/src/components/next.js.map +1 -1
  476. package/lib/components/pagination/src/components/next2.js +19 -38
  477. package/lib/components/pagination/src/components/next2.js.map +1 -1
  478. package/lib/components/pagination/src/components/pager.js +17 -216
  479. package/lib/components/pagination/src/components/pager.js.map +1 -1
  480. package/lib/components/pagination/src/components/pager2.js +216 -17
  481. package/lib/components/pagination/src/components/pager2.js.map +1 -1
  482. package/lib/components/pagination/src/components/sizes.js +70 -22
  483. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  484. package/lib/components/pagination/src/components/sizes2.js +22 -70
  485. package/lib/components/pagination/src/components/sizes2.js.map +1 -1
  486. package/lib/components/pagination/src/components/total.js +7 -28
  487. package/lib/components/pagination/src/components/total.js.map +1 -1
  488. package/lib/components/pagination/src/components/total2.js +28 -7
  489. package/lib/components/pagination/src/components/total2.js.map +1 -1
  490. package/lib/components/pagination/src/pagination.js +4 -4
  491. package/lib/components/popconfirm/index.js +2 -2
  492. package/lib/components/popconfirm/src/popconfirm.js +110 -48
  493. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  494. package/lib/components/popconfirm/src/popconfirm2.js +48 -110
  495. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  496. package/lib/components/popover/src/popover.js +1 -1
  497. package/lib/components/popper/index.js +4 -4
  498. package/lib/components/popper/src/arrow.js +39 -9
  499. package/lib/components/popper/src/arrow.js.map +1 -1
  500. package/lib/components/popper/src/arrow2.js +9 -39
  501. package/lib/components/popper/src/arrow2.js.map +1 -1
  502. package/lib/components/popper/src/popper.js +32 -28
  503. package/lib/components/popper/src/popper.js.map +1 -1
  504. package/lib/components/popper/src/popper2.js +28 -32
  505. package/lib/components/popper/src/popper2.js.map +1 -1
  506. package/lib/components/progress/src/progress.js.map +1 -1
  507. package/lib/components/radio/index.js +4 -4
  508. package/lib/components/radio/src/radio-button.js +1 -1
  509. package/lib/components/radio/src/radio-group.js +37 -70
  510. package/lib/components/radio/src/radio-group.js.map +1 -1
  511. package/lib/components/radio/src/radio-group2.js +70 -37
  512. package/lib/components/radio/src/radio-group2.js.map +1 -1
  513. package/lib/components/radio/src/radio.js +32 -71
  514. package/lib/components/radio/src/radio.js.map +1 -1
  515. package/lib/components/radio/src/radio2.js +71 -32
  516. package/lib/components/radio/src/radio2.js.map +1 -1
  517. package/lib/components/rate/index.js +2 -2
  518. package/lib/components/rate/src/rate.js +87 -256
  519. package/lib/components/rate/src/rate.js.map +1 -1
  520. package/lib/components/rate/src/rate2.js +256 -87
  521. package/lib/components/rate/src/rate2.js.map +1 -1
  522. package/lib/components/result/src/result2.js.map +1 -1
  523. package/lib/components/row/index.js +2 -2
  524. package/lib/components/row/src/row.js +32 -45
  525. package/lib/components/row/src/row.js.map +1 -1
  526. package/lib/components/row/src/row2.js +45 -32
  527. package/lib/components/row/src/row2.js.map +1 -1
  528. package/lib/components/scrollbar/index.js +3 -3
  529. package/lib/components/scrollbar/src/bar2.js +1 -1
  530. package/lib/components/scrollbar/src/scrollbar.js +47 -176
  531. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  532. package/lib/components/scrollbar/src/scrollbar2.js +176 -47
  533. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  534. package/lib/components/scrollbar/src/thumb.js +11 -134
  535. package/lib/components/scrollbar/src/thumb.js.map +1 -1
  536. package/lib/components/scrollbar/src/thumb2.js +134 -11
  537. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  538. package/lib/components/select/src/useSelect.js +4 -0
  539. package/lib/components/select/src/useSelect.js.map +1 -1
  540. package/lib/components/select-v2/src/useSelect.js +1 -1
  541. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  542. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  543. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  544. package/lib/components/slider/index.js +2 -2
  545. package/lib/components/slider/src/slider.js +92 -233
  546. package/lib/components/slider/src/slider.js.map +1 -1
  547. package/lib/components/slider/src/slider2.js +233 -92
  548. package/lib/components/slider/src/slider2.js.map +1 -1
  549. package/lib/components/statistic/index.js +2 -2
  550. package/lib/components/statistic/src/statistic.js +70 -25
  551. package/lib/components/statistic/src/statistic.js.map +1 -1
  552. package/lib/components/statistic/src/statistic2.js +25 -70
  553. package/lib/components/statistic/src/statistic2.js.map +1 -1
  554. package/lib/components/steps/index.d.ts +2 -0
  555. package/lib/components/steps/src/item.vue.d.ts +1 -0
  556. package/lib/components/steps/src/item2.js +9 -6
  557. package/lib/components/steps/src/item2.js.map +1 -1
  558. package/lib/components/switch/index.js +2 -2
  559. package/lib/components/switch/src/switch.js +242 -88
  560. package/lib/components/switch/src/switch.js.map +1 -1
  561. package/lib/components/switch/src/switch2.js +88 -242
  562. package/lib/components/switch/src/switch2.js.map +1 -1
  563. package/lib/components/table/src/table-header/event-helper.js +6 -2
  564. package/lib/components/table/src/table-header/event-helper.js.map +1 -1
  565. package/lib/components/table-v2/src/renderers/cell.js +1 -1
  566. package/lib/components/table-v2/src/renderers/cell.js.map +1 -1
  567. package/lib/components/tabs/index.js +3 -3
  568. package/lib/components/tabs/src/tab-bar.js +7 -75
  569. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  570. package/lib/components/tabs/src/tab-bar2.js +75 -7
  571. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  572. package/lib/components/tabs/src/tab-nav.js +1 -1
  573. package/lib/components/tabs/src/tab-pane.js +73 -14
  574. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  575. package/lib/components/tabs/src/tab-pane2.js +14 -73
  576. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  577. package/lib/components/tag/index.d.ts +8 -8
  578. package/lib/components/tag/src/tag.d.ts +2 -2
  579. package/lib/components/tag/src/tag.js +2 -2
  580. package/lib/components/tag/src/tag.js.map +1 -1
  581. package/lib/components/tag/src/tag.vue.d.ts +8 -8
  582. package/lib/components/tag/src/tag2.js +3 -3
  583. package/lib/components/tag/src/tag2.js.map +1 -1
  584. package/lib/components/time-select/src/time-select.js.map +1 -1
  585. package/lib/components/time-select/src/time-select2.js.map +1 -1
  586. package/lib/components/timeline/index.d.ts +38 -0
  587. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  588. package/lib/components/timeline/src/timeline-item.vue.d.ts +19 -0
  589. package/lib/components/timeline/src/timeline-item2.js +8 -6
  590. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  591. package/lib/components/tooltip/src/tooltip.js +2 -2
  592. package/lib/components/tooltip/src/tooltip2.js +1 -1
  593. package/lib/components/tooltip-v2/index.js +2 -2
  594. package/lib/components/tooltip-v2/src/arrow.js +23 -37
  595. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  596. package/lib/components/tooltip-v2/src/arrow2.js +37 -23
  597. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  598. package/lib/components/tooltip-v2/src/root.js +17 -82
  599. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  600. package/lib/components/tooltip-v2/src/root2.js +82 -17
  601. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  602. package/lib/components/tooltip-v2/src/tooltip.js +2 -2
  603. package/lib/components/tooltip-v2/src/tooltip2.js +4 -4
  604. package/lib/components/transfer/index.js +2 -2
  605. package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
  606. package/lib/components/transfer/src/transfer-panel.js +1 -1
  607. package/lib/components/transfer/src/transfer.js +73 -162
  608. package/lib/components/transfer/src/transfer.js.map +1 -1
  609. package/lib/components/transfer/src/transfer2.js +162 -73
  610. package/lib/components/transfer/src/transfer2.js.map +1 -1
  611. package/lib/components/tree/index.d.ts +2 -2
  612. package/lib/components/tree/src/model/useDragNode.js +2 -2
  613. package/lib/components/tree/src/model/useDragNode.js.map +1 -1
  614. package/lib/components/tree/src/tree.type.d.ts +1 -1
  615. package/lib/components/tree/src/tree.vue.d.ts +1 -1
  616. package/lib/components/tree-select/src/tree-select.js.map +1 -1
  617. package/lib/components/tree-select/src/tree.js +20 -3
  618. package/lib/components/tree-select/src/tree.js.map +1 -1
  619. package/lib/components/upload/index.js +1 -1
  620. package/lib/components/upload/src/upload-content2.js +4 -0
  621. package/lib/components/upload/src/upload-content2.js.map +1 -1
  622. package/lib/components/upload/src/upload-list.js +27 -177
  623. package/lib/components/upload/src/upload-list.js.map +1 -1
  624. package/lib/components/upload/src/upload-list2.js +177 -27
  625. package/lib/components/upload/src/upload-list2.js.map +1 -1
  626. package/lib/components/upload/src/upload2.js +1 -1
  627. package/lib/index.js +39 -39
  628. package/lib/locale/lang/fa.js +20 -20
  629. package/lib/locale/lang/fa.js.map +1 -1
  630. package/lib/utils/types.js +1 -1
  631. package/lib/utils/types.js.map +1 -1
  632. package/package.json +1 -1
  633. package/theme-chalk/el-carousel-item.css +1 -1
  634. package/theme-chalk/el-carousel.css +1 -1
  635. package/theme-chalk/index.css +1 -1
  636. package/theme-chalk/src/carousel-item.scss +8 -0
  637. package/theme-chalk/src/carousel.scss +9 -2
  638. package/theme-chalk/src/image.scss +6 -6
  639. package/theme-chalk/src/progress.scss +10 -1
  640. package/theme-chalk/src/text.scss +1 -1
  641. package/web-types.json +1 -1
@@ -2,82 +2,171 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var lodashUnified = require('lodash-unified');
5
+ var vue = require('vue');
6
+ require('../../config-provider/index.js');
6
7
  require('../../../utils/index.js');
7
- require('../../../constants/index.js');
8
- var runtime = require('../../../utils/vue/props/runtime.js');
9
- var typescript = require('../../../utils/typescript.js');
10
- var shared = require('@vue/shared');
11
- var event = require('../../../constants/event.js');
8
+ require('../../../hooks/index.js');
9
+ var index$2 = require('../../button/index.js');
10
+ var index$3 = require('../../icon/index.js');
11
+ require('../../form/index.js');
12
+ var iconsVue = require('@element-plus/icons-vue');
13
+ var transfer = require('./transfer.js');
14
+ require('./composables/index.js');
15
+ var transferPanel = require('./transfer-panel2.js');
16
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
17
+ var index = require('../../../hooks/use-locale/index.js');
18
+ var index$1 = require('../../../hooks/use-namespace/index.js');
19
+ var useFormItem = require('../../form/src/hooks/use-form-item.js');
20
+ var usePropsAlias = require('./composables/use-props-alias.js');
21
+ var useComputedData = require('./composables/use-computed-data.js');
22
+ var useCheckedChange = require('./composables/use-checked-change.js');
23
+ var useMove = require('./composables/use-move.js');
24
+ var forEditor = require('../../config-provider/src/for-editor.js');
25
+ var error = require('../../../utils/error.js');
26
+ var types = require('../../../utils/types.js');
12
27
 
13
- const LEFT_CHECK_CHANGE_EVENT = "left-check-change";
14
- const RIGHT_CHECK_CHANGE_EVENT = "right-check-change";
15
- const transferProps = runtime.buildProps({
16
- data: {
17
- type: runtime.definePropType(Array),
18
- default: () => []
19
- },
20
- titles: {
21
- type: runtime.definePropType(Array),
22
- default: () => []
23
- },
24
- buttonTexts: {
25
- type: runtime.definePropType(Array),
26
- default: () => []
27
- },
28
- filterPlaceholder: String,
29
- filterMethod: {
30
- type: runtime.definePropType(Function)
31
- },
32
- leftDefaultChecked: {
33
- type: runtime.definePropType(Array),
34
- default: () => []
35
- },
36
- rightDefaultChecked: {
37
- type: runtime.definePropType(Array),
38
- default: () => []
39
- },
40
- renderContent: {
41
- type: runtime.definePropType(Function)
42
- },
43
- modelValue: {
44
- type: runtime.definePropType(Array),
45
- default: () => []
46
- },
47
- format: {
48
- type: runtime.definePropType(Object),
49
- default: () => ({})
50
- },
51
- filterable: Boolean,
52
- props: {
53
- type: runtime.definePropType(Object),
54
- default: () => typescript.mutable({
55
- label: "label",
56
- key: "key",
57
- disabled: "disabled"
58
- })
59
- },
60
- targetOrder: {
61
- type: String,
62
- values: ["original", "push", "unshift"],
63
- default: "original"
64
- },
65
- validateEvent: {
66
- type: Boolean,
67
- default: true
28
+ const _hoisted_1 = { key: 0 };
29
+ const _hoisted_2 = { key: 0 };
30
+ const __default__ = vue.defineComponent({
31
+ name: "ElTransfer"
32
+ });
33
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
34
+ ...__default__,
35
+ props: transfer.transferProps,
36
+ emits: transfer.transferEmits,
37
+ setup(__props, { expose, emit }) {
38
+ const props = __props;
39
+ const slots = vue.useSlots();
40
+ const { t } = index.useLocale();
41
+ const ns = index$1.useNamespace("transfer");
42
+ const { formItem } = useFormItem.useFormItem();
43
+ const checkedState = vue.reactive({
44
+ leftChecked: [],
45
+ rightChecked: []
46
+ });
47
+ const propsAlias = usePropsAlias.usePropsAlias(props);
48
+ const { sourceData, targetData } = useComputedData.useComputedData(props);
49
+ const { onSourceCheckedChange, onTargetCheckedChange } = useCheckedChange.useCheckedChange(checkedState, emit);
50
+ const { addToLeft, addToRight } = useMove.useMove(props, checkedState, emit);
51
+ const leftPanel = vue.ref();
52
+ const rightPanel = vue.ref();
53
+ const clearQuery = (which) => {
54
+ switch (which) {
55
+ case "left":
56
+ leftPanel.value.query = "";
57
+ break;
58
+ case "right":
59
+ rightPanel.value.query = "";
60
+ break;
61
+ }
62
+ };
63
+ const hasButtonTexts = vue.computed(() => props.buttonTexts.length === 2);
64
+ const leftPanelTitle = vue.computed(() => props.titles[0] || t("el.transfer.titles.0"));
65
+ const rightPanelTitle = vue.computed(() => props.titles[1] || t("el.transfer.titles.1"));
66
+ const panelFilterPlaceholder = vue.computed(() => props.filterPlaceholder || t("el.transfer.filterPlaceholder"));
67
+ forEditor.watch(() => props.modelValue, () => {
68
+ var _a;
69
+ if (props.validateEvent) {
70
+ (_a = formItem == null ? void 0 : formItem.validate) == null ? void 0 : _a.call(formItem, "change").catch((err) => error.debugWarn(err));
71
+ }
72
+ });
73
+ const optionRender = vue.computed(() => (option) => {
74
+ if (props.renderContent)
75
+ return props.renderContent(vue.h, option);
76
+ if (slots.default)
77
+ return slots.default({ option });
78
+ return vue.h("span", option[propsAlias.value.label] || option[propsAlias.value.key]);
79
+ });
80
+ expose({
81
+ clearQuery,
82
+ leftPanel,
83
+ rightPanel
84
+ });
85
+ return (_ctx, _cache) => {
86
+ return vue.openBlock(), vue.createElementBlock("div", {
87
+ class: vue.normalizeClass(vue.unref(ns).b())
88
+ }, [
89
+ vue.createVNode(transferPanel["default"], {
90
+ ref_key: "leftPanel",
91
+ ref: leftPanel,
92
+ data: vue.unref(sourceData),
93
+ "option-render": vue.unref(optionRender),
94
+ placeholder: vue.unref(panelFilterPlaceholder),
95
+ title: vue.unref(leftPanelTitle),
96
+ filterable: _ctx.filterable,
97
+ format: _ctx.format,
98
+ "filter-method": _ctx.filterMethod,
99
+ "default-checked": _ctx.leftDefaultChecked,
100
+ props: props.props,
101
+ onCheckedChange: vue.unref(onSourceCheckedChange)
102
+ }, {
103
+ default: vue.withCtx(() => [
104
+ vue.renderSlot(_ctx.$slots, "left-footer")
105
+ ]),
106
+ _: 3
107
+ }, 8, ["data", "option-render", "placeholder", "title", "filterable", "format", "filter-method", "default-checked", "props", "onCheckedChange"]),
108
+ vue.createElementVNode("div", {
109
+ class: vue.normalizeClass(vue.unref(ns).e("buttons"))
110
+ }, [
111
+ vue.createVNode(vue.unref(index$2.ElButton), {
112
+ type: "primary",
113
+ class: vue.normalizeClass([vue.unref(ns).e("button"), vue.unref(ns).is("with-texts", vue.unref(hasButtonTexts))]),
114
+ disabled: vue.unref(types.isEmpty)(checkedState.rightChecked),
115
+ onClick: vue.unref(addToLeft)
116
+ }, {
117
+ default: vue.withCtx(() => [
118
+ vue.createVNode(vue.unref(index$3.ElIcon), null, {
119
+ default: vue.withCtx(() => [
120
+ vue.createVNode(vue.unref(iconsVue.ArrowLeft))
121
+ ]),
122
+ _: 1
123
+ }),
124
+ !vue.unref(types.isUndefined)(_ctx.buttonTexts[0]) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1, vue.toDisplayString(_ctx.buttonTexts[0]), 1)) : vue.createCommentVNode("v-if", true)
125
+ ]),
126
+ _: 1
127
+ }, 8, ["class", "disabled", "onClick"]),
128
+ vue.createVNode(vue.unref(index$2.ElButton), {
129
+ type: "primary",
130
+ class: vue.normalizeClass([vue.unref(ns).e("button"), vue.unref(ns).is("with-texts", vue.unref(hasButtonTexts))]),
131
+ disabled: vue.unref(types.isEmpty)(checkedState.leftChecked),
132
+ onClick: vue.unref(addToRight)
133
+ }, {
134
+ default: vue.withCtx(() => [
135
+ !vue.unref(types.isUndefined)(_ctx.buttonTexts[1]) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2, vue.toDisplayString(_ctx.buttonTexts[1]), 1)) : vue.createCommentVNode("v-if", true),
136
+ vue.createVNode(vue.unref(index$3.ElIcon), null, {
137
+ default: vue.withCtx(() => [
138
+ vue.createVNode(vue.unref(iconsVue.ArrowRight))
139
+ ]),
140
+ _: 1
141
+ })
142
+ ]),
143
+ _: 1
144
+ }, 8, ["class", "disabled", "onClick"])
145
+ ], 2),
146
+ vue.createVNode(transferPanel["default"], {
147
+ ref_key: "rightPanel",
148
+ ref: rightPanel,
149
+ data: vue.unref(targetData),
150
+ "option-render": vue.unref(optionRender),
151
+ placeholder: vue.unref(panelFilterPlaceholder),
152
+ filterable: _ctx.filterable,
153
+ format: _ctx.format,
154
+ "filter-method": _ctx.filterMethod,
155
+ title: vue.unref(rightPanelTitle),
156
+ "default-checked": _ctx.rightDefaultChecked,
157
+ props: props.props,
158
+ onCheckedChange: vue.unref(onTargetCheckedChange)
159
+ }, {
160
+ default: vue.withCtx(() => [
161
+ vue.renderSlot(_ctx.$slots, "right-footer")
162
+ ]),
163
+ _: 3
164
+ }, 8, ["data", "option-render", "placeholder", "filterable", "format", "filter-method", "title", "default-checked", "props", "onCheckedChange"])
165
+ ], 2);
166
+ };
68
167
  }
69
168
  });
70
- const transferCheckedChangeFn = (value, movedKeys) => [value, movedKeys].every(shared.isArray) || shared.isArray(value) && lodashUnified.isNil(movedKeys);
71
- const transferEmits = {
72
- [event.CHANGE_EVENT]: (value, direction, movedKeys) => [value, movedKeys].every(shared.isArray) && ["left", "right"].includes(direction),
73
- [event.UPDATE_MODEL_EVENT]: (value) => shared.isArray(value),
74
- [LEFT_CHECK_CHANGE_EVENT]: transferCheckedChangeFn,
75
- [RIGHT_CHECK_CHANGE_EVENT]: transferCheckedChangeFn
76
- };
169
+ var Transfer = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "D:\\workspace\\element-pe\\packages\\components\\transfer\\src\\transfer.vue"]]);
77
170
 
78
- exports.LEFT_CHECK_CHANGE_EVENT = LEFT_CHECK_CHANGE_EVENT;
79
- exports.RIGHT_CHECK_CHANGE_EVENT = RIGHT_CHECK_CHANGE_EVENT;
80
- exports.transferCheckedChangeFn = transferCheckedChangeFn;
81
- exports.transferEmits = transferEmits;
82
- exports.transferProps = transferProps;
171
+ exports["default"] = Transfer;
83
172
  //# sourceMappingURL=transfer2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transfer2.js","sources":["../../../../../../packages/components/transfer/src/transfer.ts"],"sourcesContent":["import { isNil } from 'lodash-unified'\nimport {\n buildProps,\n definePropType,\n isArray,\n mutable,\n} from '@element-plus/utils'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type { ExtractPropTypes, h as H, VNode } from 'vue'\nimport type Transfer from './transfer.vue'\n\nexport type TransferKey = string | number\nexport type TransferDirection = 'left' | 'right'\n\nexport type TransferDataItem = Record<string, any>\n\nexport type renderContent = (\n h: typeof H,\n option: TransferDataItem\n) => VNode | VNode[]\n\nexport interface TransferFormat {\n noChecked?: string\n hasChecked?: string\n}\n\nexport interface TransferPropsAlias {\n label?: string\n key?: string\n disabled?: string\n}\n\nexport interface TransferCheckedState {\n leftChecked: TransferKey[]\n rightChecked: TransferKey[]\n}\n\nexport const LEFT_CHECK_CHANGE_EVENT = 'left-check-change'\nexport const RIGHT_CHECK_CHANGE_EVENT = 'right-check-change'\n\nexport const transferProps = buildProps({\n data: {\n type: definePropType<TransferDataItem[]>(Array),\n default: () => [],\n },\n titles: {\n type: definePropType<[string, string]>(Array),\n default: () => [],\n },\n buttonTexts: {\n type: definePropType<[string, string]>(Array),\n default: () => [],\n },\n filterPlaceholder: String,\n filterMethod: {\n type: definePropType<(query: string, item: TransferDataItem) => boolean>(\n Function\n ),\n },\n leftDefaultChecked: {\n type: definePropType<TransferKey[]>(Array),\n default: () => [],\n },\n rightDefaultChecked: {\n type: definePropType<TransferKey[]>(Array),\n default: () => [],\n },\n renderContent: {\n type: definePropType<renderContent>(Function),\n },\n modelValue: {\n type: definePropType<TransferKey[]>(Array),\n default: () => [],\n },\n format: {\n type: definePropType<TransferFormat>(Object),\n default: () => ({}),\n },\n filterable: Boolean,\n props: {\n type: definePropType<TransferPropsAlias>(Object),\n default: () =>\n mutable({\n label: 'label',\n key: 'key',\n disabled: 'disabled',\n } as const),\n },\n targetOrder: {\n type: String,\n values: ['original', 'push', 'unshift'],\n default: 'original',\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type TransferProps = ExtractPropTypes<typeof transferProps>\n\nexport const transferCheckedChangeFn = (\n value: TransferKey[],\n movedKeys?: TransferKey[]\n) => [value, movedKeys].every(isArray) || (isArray(value) && isNil(movedKeys))\n\nexport const transferEmits = {\n [CHANGE_EVENT]: (\n value: TransferKey[],\n direction: TransferDirection,\n movedKeys: TransferKey[]\n ) =>\n [value, movedKeys].every(isArray) && ['left', 'right'].includes(direction),\n [UPDATE_MODEL_EVENT]: (value: TransferKey[]) => isArray(value),\n [LEFT_CHECK_CHANGE_EVENT]: transferCheckedChangeFn,\n [RIGHT_CHECK_CHANGE_EVENT]: transferCheckedChangeFn,\n}\nexport type TransferEmits = typeof transferEmits\n\nexport type TransferInstance = InstanceType<typeof Transfer>\n"],"names":["buildProps","definePropType","mutable","isArray","isNil","CHANGE_EVENT","UPDATE_MODEL_EVENT"],"mappings":";;;;;;;;;;;;AAQY,MAAC,uBAAuB,GAAG,oBAAoB;AAC/C,MAAC,wBAAwB,GAAG,qBAAqB;AACjD,MAAC,aAAa,GAAGA,kBAAU,CAAC;AACxC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,iBAAiB,EAAE,MAAM;AAC3B,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,mBAAmB,EAAE;AACvB,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;AACvB,GAAG;AACH,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,MAAMC,kBAAO,CAAC;AAC3B,MAAM,KAAK,EAAE,OAAO;AACpB,MAAM,GAAG,EAAE,KAAK;AAChB,MAAM,QAAQ,EAAE,UAAU;AAC1B,KAAK,CAAC;AACN,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC;AAC3C,IAAI,OAAO,EAAE,UAAU;AACvB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,uBAAuB,GAAG,CAAC,KAAK,EAAE,SAAS,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,KAAK,CAACC,cAAO,CAAC,IAAIA,cAAO,CAAC,KAAK,CAAC,IAAIC,mBAAK,CAAC,SAAS,EAAE;AACzH,MAAC,aAAa,GAAG;AAC7B,EAAE,CAACC,kBAAY,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,KAAK,CAACF,cAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;AAC7H,EAAE,CAACG,wBAAkB,GAAG,CAAC,KAAK,KAAKH,cAAO,CAAC,KAAK,CAAC;AACjD,EAAE,CAAC,uBAAuB,GAAG,uBAAuB;AACpD,EAAE,CAAC,wBAAwB,GAAG,uBAAuB;AACrD;;;;;;;;"}
1
+ {"version":3,"file":"transfer2.js","sources":["../../../../../../packages/components/transfer/src/transfer.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <transfer-panel\n ref=\"leftPanel\"\n :data=\"sourceData\"\n :option-render=\"optionRender\"\n :placeholder=\"panelFilterPlaceholder\"\n :title=\"leftPanelTitle\"\n :filterable=\"filterable\"\n :format=\"format\"\n :filter-method=\"filterMethod\"\n :default-checked=\"leftDefaultChecked\"\n :props=\"props.props\"\n @checked-change=\"onSourceCheckedChange\"\n >\n <slot name=\"left-footer\" />\n </transfer-panel>\n <div :class=\"ns.e('buttons')\">\n <el-button\n type=\"primary\"\n :class=\"[ns.e('button'), ns.is('with-texts', hasButtonTexts)]\"\n :disabled=\"isEmpty(checkedState.rightChecked)\"\n @click=\"addToLeft\"\n >\n <el-icon><arrow-left /></el-icon>\n <span v-if=\"!isUndefined(buttonTexts[0])\">{{ buttonTexts[0] }}</span>\n </el-button>\n <el-button\n type=\"primary\"\n :class=\"[ns.e('button'), ns.is('with-texts', hasButtonTexts)]\"\n :disabled=\"isEmpty(checkedState.leftChecked)\"\n @click=\"addToRight\"\n >\n <span v-if=\"!isUndefined(buttonTexts[1])\">{{ buttonTexts[1] }}</span>\n <el-icon><arrow-right /></el-icon>\n </el-button>\n </div>\n <transfer-panel\n ref=\"rightPanel\"\n :data=\"targetData\"\n :option-render=\"optionRender\"\n :placeholder=\"panelFilterPlaceholder\"\n :filterable=\"filterable\"\n :format=\"format\"\n :filter-method=\"filterMethod\"\n :title=\"rightPanelTitle\"\n :default-checked=\"rightDefaultChecked\"\n :props=\"props.props\"\n @checked-change=\"onTargetCheckedChange\"\n >\n <slot name=\"right-footer\" />\n </transfer-panel>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, h, reactive, ref, useSlots } from 'vue'\nimport { watch } from '../../config-provider'\nimport { debugWarn, isEmpty, isUndefined } from '@element-plus/utils'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElButton } from '@element-plus/components/button'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useFormItem } from '@element-plus/components/form'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport { transferEmits, transferProps } from './transfer'\nimport {\n useCheckedChange,\n useComputedData,\n useMove,\n usePropsAlias,\n} from './composables'\nimport TransferPanel from './transfer-panel.vue'\n\nimport type {\n TransferCheckedState,\n TransferDataItem,\n TransferDirection,\n} from './transfer'\nimport type { TransferPanelInstance } from './transfer-panel'\n\ndefineOptions({\n name: 'ElTransfer',\n})\n\nconst props = defineProps(transferProps)\nconst emit = defineEmits(transferEmits)\nconst slots = useSlots()\n\nconst { t } = useLocale()\nconst ns = useNamespace('transfer')\nconst { formItem } = useFormItem()\n\nconst checkedState = reactive<TransferCheckedState>({\n leftChecked: [],\n rightChecked: [],\n})\n\nconst propsAlias = usePropsAlias(props)\n\nconst { sourceData, targetData } = useComputedData(props)\n\nconst { onSourceCheckedChange, onTargetCheckedChange } = useCheckedChange(\n checkedState,\n emit\n)\n\nconst { addToLeft, addToRight } = useMove(props, checkedState, emit)\n\nconst leftPanel = ref<TransferPanelInstance>()\nconst rightPanel = ref<TransferPanelInstance>()\n\nconst clearQuery = (which: TransferDirection) => {\n switch (which) {\n case 'left':\n leftPanel.value!.query = ''\n break\n case 'right':\n rightPanel.value!.query = ''\n break\n }\n}\n\nconst hasButtonTexts = computed(() => props.buttonTexts.length === 2)\n\nconst leftPanelTitle = computed(\n () => props.titles[0] || t('el.transfer.titles.0')\n)\n\nconst rightPanelTitle = computed(\n () => props.titles[1] || t('el.transfer.titles.1')\n)\n\nconst panelFilterPlaceholder = computed(\n () => props.filterPlaceholder || t('el.transfer.filterPlaceholder')\n)\n\nwatch(\n () => props.modelValue,\n () => {\n if (props.validateEvent) {\n formItem?.validate?.('change').catch((err) => debugWarn(err))\n }\n }\n)\n\nconst optionRender = computed(() => (option: TransferDataItem) => {\n if (props.renderContent) return props.renderContent(h, option)\n\n if (slots.default) return slots.default({ option })\n\n return h(\n 'span',\n option[propsAlias.value.label] || option[propsAlias.value.key]\n )\n})\n\ndefineExpose({\n /** @description clear the filter keyword of a certain panel */\n clearQuery,\n /** @description left panel ref */\n leftPanel,\n /** @description left panel ref */\n rightPanel,\n})\n</script>\n"],"names":["useSlots","useLocale","useNamespace","useFormItem","reactive","usePropsAlias","useComputedData","useCheckedChange","useMove","ref","computed","watch","debugWarn","h"],"mappings":"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"}
@@ -190,7 +190,7 @@ declare const _Tree: SFCWithInstall<import("vue").DefineComponent<{
190
190
  props: {
191
191
  children?: string | undefined;
192
192
  label?: string | ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => string) | undefined;
193
- disabled?: string | ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => string) | undefined;
193
+ disabled?: string | ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => boolean) | undefined;
194
194
  isLeaf?: string | ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => boolean) | undefined;
195
195
  class?: ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => string | {
196
196
  [key: string]: boolean;
@@ -637,7 +637,7 @@ export declare const ElTree: SFCWithInstall<import("vue").DefineComponent<{
637
637
  props: {
638
638
  children?: string | undefined;
639
639
  label?: string | ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => string) | undefined;
640
- disabled?: string | ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => string) | undefined;
640
+ disabled?: string | ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => boolean) | undefined;
641
641
  isLeaf?: string | ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => boolean) | undefined;
642
642
  class?: ((data: import("./src/tree.type").TreeNodeData, node: import("./src/model/node").default) => string | {
643
643
  [key: string]: boolean;
@@ -34,7 +34,7 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
34
34
  const treeNodeDragOver = ({ event, treeNode }) => {
35
35
  const dropNode = treeNode;
36
36
  const oldDropNode = dragState.value.dropNode;
37
- if (oldDropNode && oldDropNode !== dropNode) {
37
+ if (oldDropNode && oldDropNode.node.id !== dropNode.node.id) {
38
38
  style.removeClass(oldDropNode.$el, ns.is("drop-inner"));
39
39
  }
40
40
  const draggingNode = dragState.value.draggingNode;
@@ -50,7 +50,7 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
50
50
  dropNext = props.allowDrop(draggingNode.node, dropNode.node, "next");
51
51
  }
52
52
  event.dataTransfer.dropEffect = dropInner || dropPrev || dropNext ? "move" : "none";
53
- if ((dropPrev || dropInner || dropNext) && oldDropNode !== dropNode) {
53
+ if ((dropPrev || dropInner || dropNext) && (oldDropNode == null ? void 0 : oldDropNode.node.id) !== dropNode.node.id) {
54
54
  if (oldDropNode) {
55
55
  ctx.emit("node-drag-leave", draggingNode.node, oldDropNode.node, event);
56
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useDragNode.js","sources":["../../../../../../../packages/components/tree/src/model/useDragNode.ts"],"sourcesContent":["// @ts-nocheck\nimport { provide, ref } from 'vue'\nimport { addClass, removeClass } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport type { InjectionKey } from 'vue'\nimport type Node from './node'\nimport type { NodeDropType } from '../tree.type'\n\ninterface TreeNode {\n node: Node\n $el?: HTMLElement\n}\n\ninterface DragOptions {\n event: DragEvent\n treeNode: TreeNode\n}\n\nexport interface DragEvents {\n treeNodeDragStart: (options: DragOptions) => void\n treeNodeDragOver: (options: DragOptions) => void\n treeNodeDragEnd: (event: DragEvent) => void\n}\n\nexport const dragEventsKey: InjectionKey<DragEvents> = Symbol('dragEvents')\n\nexport function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {\n const ns = useNamespace('tree')\n const dragState = ref({\n showDropIndicator: false,\n draggingNode: null,\n dropNode: null,\n allowDrop: true,\n dropType: null,\n })\n\n const treeNodeDragStart = ({ event, treeNode }: DragOptions) => {\n if (\n typeof props.allowDrag === 'function' &&\n !props.allowDrag(treeNode.node)\n ) {\n event.preventDefault()\n return false\n }\n event.dataTransfer.effectAllowed = 'move'\n\n // wrap in try catch to address IE's error when first param is 'text/plain'\n try {\n // setData is required for draggable to work in FireFox\n // the content has to be '' so dragging a node out of the tree won't open a new tab in FireFox\n event.dataTransfer.setData('text/plain', '')\n } catch {}\n dragState.value.draggingNode = treeNode\n ctx.emit('node-drag-start', treeNode.node, event)\n }\n\n const treeNodeDragOver = ({ event, treeNode }: DragOptions) => {\n const dropNode = treeNode\n const oldDropNode = dragState.value.dropNode\n if (oldDropNode && oldDropNode !== dropNode) {\n removeClass(oldDropNode.$el, ns.is('drop-inner'))\n }\n const draggingNode = dragState.value.draggingNode\n if (!draggingNode || !dropNode) return\n\n let dropPrev = true\n let dropInner = true\n let dropNext = true\n let userAllowDropInner = true\n if (typeof props.allowDrop === 'function') {\n dropPrev = props.allowDrop(draggingNode.node, dropNode.node, 'prev')\n userAllowDropInner = dropInner = props.allowDrop(\n draggingNode.node,\n dropNode.node,\n 'inner'\n )\n dropNext = props.allowDrop(draggingNode.node, dropNode.node, 'next')\n }\n event.dataTransfer.dropEffect =\n dropInner || dropPrev || dropNext ? 'move' : 'none'\n if ((dropPrev || dropInner || dropNext) && oldDropNode !== dropNode) {\n if (oldDropNode) {\n ctx.emit('node-drag-leave', draggingNode.node, oldDropNode.node, event)\n }\n ctx.emit('node-drag-enter', draggingNode.node, dropNode.node, event)\n }\n\n if (dropPrev || dropInner || dropNext) {\n dragState.value.dropNode = dropNode\n }\n\n if (dropNode.node.nextSibling === draggingNode.node) {\n dropNext = false\n }\n if (dropNode.node.previousSibling === draggingNode.node) {\n dropPrev = false\n }\n if (dropNode.node.contains(draggingNode.node, false)) {\n dropInner = false\n }\n if (\n draggingNode.node === dropNode.node ||\n draggingNode.node.contains(dropNode.node)\n ) {\n dropPrev = false\n dropInner = false\n dropNext = false\n }\n\n const targetPosition = dropNode.$el.getBoundingClientRect()\n const treePosition = el$.value.getBoundingClientRect()\n\n let dropType: NodeDropType\n const prevPercent = dropPrev ? (dropInner ? 0.25 : dropNext ? 0.45 : 1) : -1\n const nextPercent = dropNext ? (dropInner ? 0.75 : dropPrev ? 0.55 : 0) : 1\n\n let indicatorTop = -9999\n const distance = event.clientY - targetPosition.top\n if (distance < targetPosition.height * prevPercent) {\n dropType = 'before'\n } else if (distance > targetPosition.height * nextPercent) {\n dropType = 'after'\n } else if (dropInner) {\n dropType = 'inner'\n } else {\n dropType = 'none'\n }\n\n const iconPosition = dropNode.$el\n .querySelector(`.${ns.be('node', 'expand-icon')}`)\n .getBoundingClientRect()\n const dropIndicator = dropIndicator$.value\n if (dropType === 'before') {\n indicatorTop = iconPosition.top - treePosition.top\n } else if (dropType === 'after') {\n indicatorTop = iconPosition.bottom - treePosition.top\n }\n dropIndicator.style.top = `${indicatorTop}px`\n dropIndicator.style.left = `${iconPosition.right - treePosition.left}px`\n\n if (dropType === 'inner') {\n addClass(dropNode.$el, ns.is('drop-inner'))\n } else {\n removeClass(dropNode.$el, ns.is('drop-inner'))\n }\n\n dragState.value.showDropIndicator =\n dropType === 'before' || dropType === 'after'\n dragState.value.allowDrop =\n dragState.value.showDropIndicator || userAllowDropInner\n dragState.value.dropType = dropType\n ctx.emit('node-drag-over', draggingNode.node, dropNode.node, event)\n }\n\n const treeNodeDragEnd = (event: DragEvent) => {\n const { draggingNode, dropType, dropNode } = dragState.value\n event.preventDefault()\n event.dataTransfer.dropEffect = 'move'\n\n if (draggingNode && dropNode) {\n const draggingNodeCopy = { data: draggingNode.node.data }\n if (dropType !== 'none') {\n draggingNode.node.remove()\n }\n if (dropType === 'before') {\n dropNode.node.parent.insertBefore(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'after') {\n dropNode.node.parent.insertAfter(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'inner') {\n dropNode.node.insertChild(draggingNodeCopy)\n }\n if (dropType !== 'none') {\n store.value.registerNode(draggingNodeCopy)\n }\n\n removeClass(dropNode.$el, ns.is('drop-inner'))\n\n ctx.emit(\n 'node-drag-end',\n draggingNode.node,\n dropNode.node,\n dropType,\n event\n )\n if (dropType !== 'none') {\n ctx.emit('node-drop', draggingNode.node, dropNode.node, dropType, event)\n }\n }\n if (draggingNode && !dropNode) {\n ctx.emit('node-drag-end', draggingNode.node, null, dropType, event)\n }\n\n dragState.value.showDropIndicator = false\n dragState.value.draggingNode = null\n dragState.value.dropNode = null\n dragState.value.allowDrop = true\n }\n\n provide(dragEventsKey, {\n treeNodeDragStart,\n treeNodeDragOver,\n treeNodeDragEnd,\n })\n\n return {\n dragState,\n }\n}\n"],"names":["useNamespace","ref","removeClass","addClass","provide"],"mappings":"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"}
1
+ {"version":3,"file":"useDragNode.js","sources":["../../../../../../../packages/components/tree/src/model/useDragNode.ts"],"sourcesContent":["// @ts-nocheck\nimport { provide, ref } from 'vue'\nimport { addClass, removeClass } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport type { InjectionKey } from 'vue'\nimport type Node from './node'\nimport type { NodeDropType } from '../tree.type'\n\ninterface TreeNode {\n node: Node\n $el?: HTMLElement\n}\n\ninterface DragOptions {\n event: DragEvent\n treeNode: TreeNode\n}\n\nexport interface DragEvents {\n treeNodeDragStart: (options: DragOptions) => void\n treeNodeDragOver: (options: DragOptions) => void\n treeNodeDragEnd: (event: DragEvent) => void\n}\n\nexport const dragEventsKey: InjectionKey<DragEvents> = Symbol('dragEvents')\n\nexport function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {\n const ns = useNamespace('tree')\n const dragState = ref({\n showDropIndicator: false,\n draggingNode: null,\n dropNode: null,\n allowDrop: true,\n dropType: null,\n })\n\n const treeNodeDragStart = ({ event, treeNode }: DragOptions) => {\n if (\n typeof props.allowDrag === 'function' &&\n !props.allowDrag(treeNode.node)\n ) {\n event.preventDefault()\n return false\n }\n event.dataTransfer.effectAllowed = 'move'\n\n // wrap in try catch to address IE's error when first param is 'text/plain'\n try {\n // setData is required for draggable to work in FireFox\n // the content has to be '' so dragging a node out of the tree won't open a new tab in FireFox\n event.dataTransfer.setData('text/plain', '')\n } catch {}\n dragState.value.draggingNode = treeNode\n ctx.emit('node-drag-start', treeNode.node, event)\n }\n\n const treeNodeDragOver = ({ event, treeNode }: DragOptions) => {\n const dropNode = treeNode\n const oldDropNode = dragState.value.dropNode\n if (oldDropNode && oldDropNode.node.id !== dropNode.node.id) {\n removeClass(oldDropNode.$el, ns.is('drop-inner'))\n }\n const draggingNode = dragState.value.draggingNode\n if (!draggingNode || !dropNode) return\n\n let dropPrev = true\n let dropInner = true\n let dropNext = true\n let userAllowDropInner = true\n if (typeof props.allowDrop === 'function') {\n dropPrev = props.allowDrop(draggingNode.node, dropNode.node, 'prev')\n userAllowDropInner = dropInner = props.allowDrop(\n draggingNode.node,\n dropNode.node,\n 'inner'\n )\n dropNext = props.allowDrop(draggingNode.node, dropNode.node, 'next')\n }\n event.dataTransfer.dropEffect =\n dropInner || dropPrev || dropNext ? 'move' : 'none'\n if (\n (dropPrev || dropInner || dropNext) &&\n oldDropNode?.node.id !== dropNode.node.id\n ) {\n if (oldDropNode) {\n ctx.emit('node-drag-leave', draggingNode.node, oldDropNode.node, event)\n }\n ctx.emit('node-drag-enter', draggingNode.node, dropNode.node, event)\n }\n\n if (dropPrev || dropInner || dropNext) {\n dragState.value.dropNode = dropNode\n }\n\n if (dropNode.node.nextSibling === draggingNode.node) {\n dropNext = false\n }\n if (dropNode.node.previousSibling === draggingNode.node) {\n dropPrev = false\n }\n if (dropNode.node.contains(draggingNode.node, false)) {\n dropInner = false\n }\n if (\n draggingNode.node === dropNode.node ||\n draggingNode.node.contains(dropNode.node)\n ) {\n dropPrev = false\n dropInner = false\n dropNext = false\n }\n\n const targetPosition = dropNode.$el.getBoundingClientRect()\n const treePosition = el$.value.getBoundingClientRect()\n\n let dropType: NodeDropType\n const prevPercent = dropPrev ? (dropInner ? 0.25 : dropNext ? 0.45 : 1) : -1\n const nextPercent = dropNext ? (dropInner ? 0.75 : dropPrev ? 0.55 : 0) : 1\n\n let indicatorTop = -9999\n const distance = event.clientY - targetPosition.top\n if (distance < targetPosition.height * prevPercent) {\n dropType = 'before'\n } else if (distance > targetPosition.height * nextPercent) {\n dropType = 'after'\n } else if (dropInner) {\n dropType = 'inner'\n } else {\n dropType = 'none'\n }\n\n const iconPosition = dropNode.$el\n .querySelector(`.${ns.be('node', 'expand-icon')}`)\n .getBoundingClientRect()\n const dropIndicator = dropIndicator$.value\n if (dropType === 'before') {\n indicatorTop = iconPosition.top - treePosition.top\n } else if (dropType === 'after') {\n indicatorTop = iconPosition.bottom - treePosition.top\n }\n dropIndicator.style.top = `${indicatorTop}px`\n dropIndicator.style.left = `${iconPosition.right - treePosition.left}px`\n\n if (dropType === 'inner') {\n addClass(dropNode.$el, ns.is('drop-inner'))\n } else {\n removeClass(dropNode.$el, ns.is('drop-inner'))\n }\n\n dragState.value.showDropIndicator =\n dropType === 'before' || dropType === 'after'\n dragState.value.allowDrop =\n dragState.value.showDropIndicator || userAllowDropInner\n dragState.value.dropType = dropType\n ctx.emit('node-drag-over', draggingNode.node, dropNode.node, event)\n }\n\n const treeNodeDragEnd = (event: DragEvent) => {\n const { draggingNode, dropType, dropNode } = dragState.value\n event.preventDefault()\n event.dataTransfer.dropEffect = 'move'\n\n if (draggingNode && dropNode) {\n const draggingNodeCopy = { data: draggingNode.node.data }\n if (dropType !== 'none') {\n draggingNode.node.remove()\n }\n if (dropType === 'before') {\n dropNode.node.parent.insertBefore(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'after') {\n dropNode.node.parent.insertAfter(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'inner') {\n dropNode.node.insertChild(draggingNodeCopy)\n }\n if (dropType !== 'none') {\n store.value.registerNode(draggingNodeCopy)\n }\n\n removeClass(dropNode.$el, ns.is('drop-inner'))\n\n ctx.emit(\n 'node-drag-end',\n draggingNode.node,\n dropNode.node,\n dropType,\n event\n )\n if (dropType !== 'none') {\n ctx.emit('node-drop', draggingNode.node, dropNode.node, dropType, event)\n }\n }\n if (draggingNode && !dropNode) {\n ctx.emit('node-drag-end', draggingNode.node, null, dropType, event)\n }\n\n dragState.value.showDropIndicator = false\n dragState.value.draggingNode = null\n dragState.value.dropNode = null\n dragState.value.allowDrop = true\n }\n\n provide(dragEventsKey, {\n treeNodeDragStart,\n treeNodeDragOver,\n treeNodeDragEnd,\n })\n\n return {\n dragState,\n }\n}\n"],"names":["useNamespace","ref","removeClass","addClass","provide"],"mappings":"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"}
@@ -53,7 +53,7 @@ export declare interface TreeStoreOptions {
53
53
  export declare interface TreeOptionProps {
54
54
  children?: string;
55
55
  label?: string | ((data: TreeNodeData, node: Node) => string);
56
- disabled?: string | ((data: TreeNodeData, node: Node) => string);
56
+ disabled?: string | ((data: TreeNodeData, node: Node) => boolean);
57
57
  isLeaf?: string | ((data: TreeNodeData, node: Node) => boolean);
58
58
  class?: (data: TreeNodeData, node: Node) => string | {
59
59
  [key: string]: boolean;
@@ -193,7 +193,7 @@ declare const _default: import("vue").DefineComponent<{
193
193
  props: {
194
194
  children?: string | undefined;
195
195
  label?: string | ((data: TreeNodeData, node: Node) => string) | undefined;
196
- disabled?: string | ((data: TreeNodeData, node: Node) => string) | undefined;
196
+ disabled?: string | ((data: TreeNodeData, node: Node) => boolean) | undefined;
197
197
  isLeaf?: string | ((data: TreeNodeData, node: Node) => boolean) | undefined;
198
198
  class?: ((data: TreeNodeData, node: Node) => string | {
199
199
  [key: string]: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"tree-select.js","sources":["../../../../../../packages/components/tree-select/src/tree-select.vue"],"sourcesContent":["<script lang=\"ts\">\n// @ts-nocheck\nimport { computed, defineComponent, h, onMounted, reactive, ref } from 'vue'\nimport { pick } from 'lodash-unified'\nimport ElSelect from '@element-plus/components/select'\nimport ElTree from '@element-plus/components/tree'\nimport { useSelect } from './select'\nimport { useTree } from './tree'\nimport CacheOptions from './cache-options'\n\nexport default defineComponent({\n name: 'ElTreeSelect',\n // disable `ElSelect` inherit current attrs\n inheritAttrs: false,\n props: {\n ...ElSelect.props,\n ...ElTree.props,\n cacheData: {\n type: Array,\n default: () => [],\n },\n },\n setup(props, context) {\n const { slots, expose } = context\n\n const select = ref<InstanceType<typeof ElSelect>>()\n const tree = ref<InstanceType<typeof ElTree>>()\n\n const key = computed(() => props.nodeKey || props.valueKey || 'value')\n\n const selectProps = useSelect(props, context, { select, tree, key })\n const { cacheOptions, ...treeProps } = useTree(props, context, {\n select,\n tree,\n key,\n })\n\n // expose ElTree/ElSelect methods\n const methods = reactive({})\n expose(methods)\n onMounted(() => {\n Object.assign(methods, {\n ...pick(tree.value, [\n 'filter',\n 'updateKeyChildren',\n 'getCheckedNodes',\n 'setCheckedNodes',\n 'getCheckedKeys',\n 'setCheckedKeys',\n 'setChecked',\n 'getHalfCheckedNodes',\n 'getHalfCheckedKeys',\n 'getCurrentKey',\n 'getCurrentNode',\n 'setCurrentKey',\n 'setCurrentNode',\n 'getNode',\n 'remove',\n 'append',\n 'insertBefore',\n 'insertAfter',\n ]),\n ...pick(select.value, ['focus', 'blur']),\n })\n })\n\n return () =>\n h(\n ElSelect,\n /**\n * 1. The `props` is processed into `Refs`, but `v-bind` and\n * render function props cannot read `Refs`, so use `reactive`\n * unwrap the `Refs` and keep reactive.\n * 2. The keyword `ref` requires `Ref`, but `reactive` broke it,\n * so use function.\n */\n reactive({\n ...selectProps,\n ref: (ref) => (select.value = ref),\n }),\n {\n ...slots,\n default: () => [\n h(CacheOptions, { data: cacheOptions.value }),\n h(\n ElTree,\n reactive({\n ...treeProps,\n ref: (ref) => (tree.value = ref),\n })\n ),\n ],\n }\n )\n },\n})\n</script>\n"],"names":["defineComponent","ElSelect","ElTree","select","ref","tree","computed","useSelect","cacheOptions","useTree","reactive","onMounted","pick","h","CacheOptions"],"mappings":";;;;;;;;;;;;;AAUA,MAAK,YAAaA,mBAAa,CAAA;AAAA,EAC7B,IAAM,EAAA,cAAA;AAAA,EAEN,YAAc,EAAA,KAAA;AAAA,EACd,KAAO,EAAA;AAAA,IACL,GAAGC,cAAS,CAAA,KAAA;AAAA,IACZ,GAAGC,kBAAO,CAAA,KAAA;AAAA,IACV,SAAW,EAAA;AAAA,MACT,IAAM,EAAA,KAAA;AAAA,MACN,OAAA,EAAS,MAAM,EAAC;AAAA,KAClB;AAAA,GACF;AAAA,EACA,KAAA,CAAM,OAAO,OAAS,EAAA;AACpB,IAAM,MAAA,EAAE,OAAO,MAAW,EAAA,GAAA,OAAA,CAAA;AAE1B,IAAA,MAAMC,WAASC,OAAmC,EAAA,CAAA;AAClD,IAAA,MAAMC,SAAOD,OAAiC,EAAA,CAAA;AAE9C,IAAA,MAAM,MAAME,YAAS,CAAA,MAAM,MAAM,OAAW,IAAA,KAAA,CAAM,YAAY,OAAO,CAAA,CAAA;AAErE,IAAM,MAAA,WAAA,GAAcC,iBAAU,KAAO,EAAA,OAAA,EAAS,UAAEJ,QAAQ,QAAAE,MAAA,EAAM,KAAK,CAAA,CAAA;AACnE,IAAA,MAAM,gBAAEG,cAAA,EAAA,GAAiB,SAAc,EAAA,GAAAC,YAAA,CAAQ,OAAO,OAAS,EAAA;AAAA,cAC7DN,QAAA;AAAA,YACAE,MAAA;AAAA,MACA,GAAA;AAAA,KACD,CAAA,CAAA;AAGD,IAAM,MAAA,OAAA,GAAUK,YAAS,CAAA,EAAE,CAAA,CAAA;AAC3B,IAAA,MAAA,CAAO,OAAO,CAAA,CAAA;AACd,IAAAC,aAAA,CAAU,MAAM;AACd,MAAA,MAAA,CAAO,OAAO,OAAS,EAAA;AAAA,QACrB,GAAGC,kBAAK,CAAAP,MAAA,CAAK,KAAO,EAAA;AAAA,UAClB,QAAA;AAAA,UACA,mBAAA;AAAA,UACA,iBAAA;AAAA,UACA,iBAAA;AAAA,UACA,gBAAA;AAAA,UACA,gBAAA;AAAA,UACA,YAAA;AAAA,UACA,qBAAA;AAAA,UACA,oBAAA;AAAA,UACA,eAAA;AAAA,UACA,gBAAA;AAAA,UACA,eAAA;AAAA,UACA,gBAAA;AAAA,UACA,SAAA;AAAA,UACA,QAAA;AAAA,UACA,QAAA;AAAA,UACA,cAAA;AAAA,UACA,aAAA;AAAA,SACD,CAAA;AAAA,QACD,GAAGO,kBAAK,CAAAT,QAAA,CAAO,OAAO,CAAC,OAAA,EAAS,MAAM,CAAC,CAAA;AAAA,OACxC,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAED,IAAO,OAAA,MACLU,KACE,CAAAZ,cAAA,EAQAS,YAAS,CAAA;AAAA,MACP,GAAG,WAAA;AAAA,MACH,GAAK,EAAA,CAAC,IAAS,KAAAP,QAAA,CAAO,KAAQ,GAAA,IAAA;AAAA,KAC/B,CACD,EAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACH,SAAS,MAAM;AAAA,QACbU,MAAEC,uBAAc,EAAA,EAAE,IAAM,EAAAN,cAAA,CAAa,OAAO,CAAA;AAAA,QAC5CK,KAAA,CACEX,oBACAQ,YAAS,CAAA;AAAA,UACP,GAAG,SAAA;AAAA,UACH,GAAK,EAAA,CAAC,IAAS,KAAAL,MAAA,CAAK,KAAQ,GAAA,IAAA;AAAA,SAC7B,CACH,CAAA;AAAA,OACF;AAAA,KAEJ,CAAA,CAAA;AAAA,GACJ;AACF,CAAC,CAAA,CAAA;;;;;"}
1
+ {"version":3,"file":"tree-select.js","sources":["../../../../../../packages/components/tree-select/src/tree-select.vue"],"sourcesContent":["<script lang=\"ts\">\n// @ts-nocheck\nimport { computed, defineComponent, h, onMounted, reactive, ref } from 'vue'\nimport { pick } from 'lodash-unified'\nimport ElSelect from '@element-plus/components/select'\nimport ElTree from '@element-plus/components/tree'\nimport { useSelect } from './select'\nimport { useTree } from './tree'\nimport CacheOptions from './cache-options'\n\nexport default defineComponent({\n name: 'ElTreeSelect',\n // disable `ElSelect` inherit current attrs\n inheritAttrs: false,\n props: {\n ...ElSelect.props,\n ...ElTree.props,\n /**\n * @description The cached data of the lazy node, the structure is the same as the data, used to get the label of the unloaded data\n */\n cacheData: {\n type: Array,\n default: () => [],\n },\n },\n setup(props, context) {\n const { slots, expose } = context\n\n const select = ref<InstanceType<typeof ElSelect>>()\n const tree = ref<InstanceType<typeof ElTree>>()\n\n const key = computed(() => props.nodeKey || props.valueKey || 'value')\n\n const selectProps = useSelect(props, context, { select, tree, key })\n const { cacheOptions, ...treeProps } = useTree(props, context, {\n select,\n tree,\n key,\n })\n\n // expose ElTree/ElSelect methods\n const methods = reactive({})\n expose(methods)\n onMounted(() => {\n Object.assign(methods, {\n ...pick(tree.value, [\n 'filter',\n 'updateKeyChildren',\n 'getCheckedNodes',\n 'setCheckedNodes',\n 'getCheckedKeys',\n 'setCheckedKeys',\n 'setChecked',\n 'getHalfCheckedNodes',\n 'getHalfCheckedKeys',\n 'getCurrentKey',\n 'getCurrentNode',\n 'setCurrentKey',\n 'setCurrentNode',\n 'getNode',\n 'remove',\n 'append',\n 'insertBefore',\n 'insertAfter',\n ]),\n ...pick(select.value, ['focus', 'blur']),\n })\n })\n\n return () =>\n h(\n ElSelect,\n /**\n * 1. The `props` is processed into `Refs`, but `v-bind` and\n * render function props cannot read `Refs`, so use `reactive`\n * unwrap the `Refs` and keep reactive.\n * 2. The keyword `ref` requires `Ref`, but `reactive` broke it,\n * so use function.\n */\n reactive({\n ...selectProps,\n ref: (ref) => (select.value = ref),\n }),\n {\n ...slots,\n default: () => [\n h(CacheOptions, { data: cacheOptions.value }),\n h(\n ElTree,\n reactive({\n ...treeProps,\n ref: (ref) => (tree.value = ref),\n })\n ),\n ],\n }\n )\n },\n})\n</script>\n"],"names":["defineComponent","ElSelect","ElTree","select","ref","tree","computed","useSelect","cacheOptions","useTree","reactive","onMounted","pick","h","CacheOptions"],"mappings":";;;;;;;;;;;;;AAUA,MAAK,YAAaA,mBAAa,CAAA;AAAA,EAC7B,IAAM,EAAA,cAAA;AAAA,EAEN,YAAc,EAAA,KAAA;AAAA,EACd,KAAO,EAAA;AAAA,IACL,GAAGC,cAAS,CAAA,KAAA;AAAA,IACZ,GAAGC,kBAAO,CAAA,KAAA;AAAA,IAIV,SAAW,EAAA;AAAA,MACT,IAAM,EAAA,KAAA;AAAA,MACN,OAAA,EAAS,MAAM,EAAC;AAAA,KAClB;AAAA,GACF;AAAA,EACA,KAAA,CAAM,OAAO,OAAS,EAAA;AACpB,IAAM,MAAA,EAAE,OAAO,MAAW,EAAA,GAAA,OAAA,CAAA;AAE1B,IAAA,MAAMC,WAASC,OAAmC,EAAA,CAAA;AAClD,IAAA,MAAMC,SAAOD,OAAiC,EAAA,CAAA;AAE9C,IAAA,MAAM,MAAME,YAAS,CAAA,MAAM,MAAM,OAAW,IAAA,KAAA,CAAM,YAAY,OAAO,CAAA,CAAA;AAErE,IAAM,MAAA,WAAA,GAAcC,iBAAU,KAAO,EAAA,OAAA,EAAS,UAAEJ,QAAQ,QAAAE,MAAA,EAAM,KAAK,CAAA,CAAA;AACnE,IAAA,MAAM,gBAAEG,cAAA,EAAA,GAAiB,SAAc,EAAA,GAAAC,YAAA,CAAQ,OAAO,OAAS,EAAA;AAAA,cAC7DN,QAAA;AAAA,YACAE,MAAA;AAAA,MACA,GAAA;AAAA,KACD,CAAA,CAAA;AAGD,IAAM,MAAA,OAAA,GAAUK,YAAS,CAAA,EAAE,CAAA,CAAA;AAC3B,IAAA,MAAA,CAAO,OAAO,CAAA,CAAA;AACd,IAAAC,aAAA,CAAU,MAAM;AACd,MAAA,MAAA,CAAO,OAAO,OAAS,EAAA;AAAA,QACrB,GAAGC,kBAAK,CAAAP,MAAA,CAAK,KAAO,EAAA;AAAA,UAClB,QAAA;AAAA,UACA,mBAAA;AAAA,UACA,iBAAA;AAAA,UACA,iBAAA;AAAA,UACA,gBAAA;AAAA,UACA,gBAAA;AAAA,UACA,YAAA;AAAA,UACA,qBAAA;AAAA,UACA,oBAAA;AAAA,UACA,eAAA;AAAA,UACA,gBAAA;AAAA,UACA,eAAA;AAAA,UACA,gBAAA;AAAA,UACA,SAAA;AAAA,UACA,QAAA;AAAA,UACA,QAAA;AAAA,UACA,cAAA;AAAA,UACA,aAAA;AAAA,SACD,CAAA;AAAA,QACD,GAAGO,kBAAK,CAAAT,QAAA,CAAO,OAAO,CAAC,OAAA,EAAS,MAAM,CAAC,CAAA;AAAA,OACxC,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAED,IAAO,OAAA,MACLU,KACE,CAAAZ,cAAA,EAQAS,YAAS,CAAA;AAAA,MACP,GAAG,WAAA;AAAA,MACH,GAAK,EAAA,CAAC,IAAS,KAAAP,QAAA,CAAO,KAAQ,GAAA,IAAA;AAAA,KAC/B,CACD,EAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACH,SAAS,MAAM;AAAA,QACbU,MAAEC,uBAAc,EAAA,EAAE,IAAM,EAAAN,cAAA,CAAa,OAAO,CAAA;AAAA,QAC5CK,KAAA,CACEX,oBACAQ,YAAS,CAAA;AAAA,UACP,GAAG,SAAA;AAAA,UACH,GAAK,EAAA,CAAC,IAAS,KAAAL,MAAA,CAAK,KAAQ,GAAA,IAAA;AAAA,SAC7B,CACH,CAAA;AAAA,OACF;AAAA,KAEJ,CAAA,CAAA;AAAA,GACJ;AACF,CAAC,CAAA,CAAA;;;;;"}
@@ -66,6 +66,9 @@ const useTree = (props, { attrs, slots, emit }, {
66
66
  }, (data) => getNodeValByProp("children", data));
67
67
  return options;
68
68
  });
69
+ const cacheOptionsMap = vue.computed(() => {
70
+ return cacheOptions.value.reduce((prev, next) => ({ ...prev, [next.value]: next }), {});
71
+ });
69
72
  return {
70
73
  ...lodashUnified.pick(vue.toRefs(props), Object.keys(index["default"].props)),
71
74
  ...attrs,
@@ -106,11 +109,14 @@ const useTree = (props, { attrs, slots, emit }, {
106
109
  }
107
110
  },
108
111
  onCheck: (data, params) => {
109
- var _a;
110
- (_a = attrs.onCheck) == null ? void 0 : _a.call(attrs, data, params);
112
+ if (!props.showCheckbox)
113
+ return;
111
114
  const dataValue = getNodeValByProp("value", data);
115
+ const uncachedCheckedKeys = params.checkedKeys;
116
+ const cachedKeys = props.multiple ? utils.toValidArray(props.modelValue).filter((item) => item in cacheOptionsMap.value && !tree.value.getNode(item) && !uncachedCheckedKeys.includes(item)) : [];
117
+ const checkedKeys = uncachedCheckedKeys.concat(cachedKeys);
112
118
  if (props.checkStrictly) {
113
- emit(event.UPDATE_MODEL_EVENT, props.multiple ? params.checkedKeys : params.checkedKeys.includes(dataValue) ? dataValue : void 0);
119
+ emit(event.UPDATE_MODEL_EVENT, props.multiple ? checkedKeys : checkedKeys.includes(dataValue) ? dataValue : void 0);
114
120
  } else {
115
121
  if (props.multiple) {
116
122
  emit(event.UPDATE_MODEL_EVENT, tree.value.getCheckedKeys(true));
@@ -121,6 +127,17 @@ const useTree = (props, { attrs, slots, emit }, {
121
127
  emit(event.UPDATE_MODEL_EVENT, firstLeafKey === props.modelValue || hasCheckedChild ? void 0 : firstLeafKey);
122
128
  }
123
129
  }
130
+ vue.nextTick(() => {
131
+ var _a;
132
+ const checkedKeys2 = utils.toValidArray(props.modelValue);
133
+ tree.value.setCheckedKeys(checkedKeys2);
134
+ (_a = attrs.onCheck) == null ? void 0 : _a.call(attrs, data, {
135
+ checkedKeys: tree.value.getCheckedKeys(),
136
+ checkedNodes: tree.value.getCheckedNodes(),
137
+ halfCheckedKeys: tree.value.getHalfCheckedKeys(),
138
+ halfCheckedNodes: tree.value.getHalfCheckedNodes()
139
+ });
140
+ });
124
141
  },
125
142
  cacheOptions
126
143
  };
@@ -1 +1 @@
1
- {"version":3,"file":"tree.js","sources":["../../../../../../packages/components/tree-select/src/tree.ts"],"sourcesContent":["// @ts-nocheck\nimport { computed, nextTick, toRefs } from 'vue'\nimport { watch } from '../../config-provider'\nimport { isEqual, pick } from 'lodash-unified'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { isFunction } from '@element-plus/utils'\nimport ElTree from '@element-plus/components/tree'\nimport TreeSelectOption from './tree-select-option'\nimport {\n isValidArray,\n isValidValue,\n toValidArray,\n treeEach,\n treeFind,\n} from './utils'\nimport type { CacheOption } from './cache-options'\nimport type { Ref } from 'vue'\nimport type ElSelect from '@element-plus/components/select'\nimport type Node from '@element-plus/components/tree/src/model/node'\nimport type { TreeNodeData } from '@element-plus/components/tree/src/tree.type'\n\nexport const useTree = (\n props,\n { attrs, slots, emit },\n {\n select,\n tree,\n key,\n }: {\n select: Ref<InstanceType<typeof ElSelect> | undefined>\n tree: Ref<InstanceType<typeof ElTree> | undefined>\n key: Ref<string>\n }\n) => {\n watch(\n () => props.modelValue,\n () => {\n if (props.showCheckbox) {\n nextTick(() => {\n const treeInstance = tree.value\n if (\n treeInstance &&\n !isEqual(\n treeInstance.getCheckedKeys(),\n toValidArray(props.modelValue)\n )\n ) {\n treeInstance.setCheckedKeys(toValidArray(props.modelValue))\n }\n })\n }\n },\n {\n immediate: true,\n deep: true,\n }\n )\n\n const propsMap = computed(() => ({\n value: key.value,\n label: 'label',\n children: 'children',\n disabled: 'disabled',\n isLeaf: 'isLeaf',\n ...props.props,\n }))\n\n const getNodeValByProp = (\n prop: 'value' | 'label' | 'children' | 'disabled' | 'isLeaf',\n data: TreeNodeData\n ) => {\n const propVal = propsMap.value[prop]\n if (isFunction(propVal)) {\n return propVal(\n data,\n tree.value?.getNode(getNodeValByProp('value', data)) as Node\n )\n } else {\n return data[propVal as string]\n }\n }\n\n const defaultExpandedParentKeys = toValidArray(props.modelValue)\n .map((value) => {\n return treeFind(\n props.data || [],\n (data) => getNodeValByProp('value', data) === value,\n (data) => getNodeValByProp('children', data),\n (data, index, array, parent) =>\n parent && getNodeValByProp('value', parent)\n )\n })\n .filter((item) => isValidValue(item))\n\n const cacheOptions = computed(() => {\n if (!props.renderAfterExpand && !props.lazy) return []\n\n const options: CacheOption[] = []\n\n treeEach(\n props.data.concat(props.cacheData),\n (node) => {\n const value = getNodeValByProp('value', node)\n options.push({\n value,\n currentLabel: getNodeValByProp('label', node),\n isDisabled: getNodeValByProp('disabled', node),\n })\n },\n (data) => getNodeValByProp('children', data)\n )\n\n return options\n })\n\n return {\n ...pick(toRefs(props), Object.keys(ElTree.props)),\n ...attrs,\n nodeKey: key,\n\n // only expand on click node when the `check-strictly` is false\n expandOnClickNode: computed(() => {\n return !props.checkStrictly && props.expandOnClickNode\n }),\n\n // show current selected node only first time,\n // fix the problem of expanding multiple nodes when checking multiple nodes\n defaultExpandedKeys: computed(() => {\n return props.defaultExpandedKeys\n ? props.defaultExpandedKeys.concat(defaultExpandedParentKeys)\n : defaultExpandedParentKeys\n }),\n\n renderContent: (h, { node, data, store }) => {\n return h(\n TreeSelectOption,\n {\n value: getNodeValByProp('value', data),\n label: getNodeValByProp('label', data),\n disabled: getNodeValByProp('disabled', data),\n },\n props.renderContent\n ? () => props.renderContent(h, { node, data, store })\n : slots.default\n ? () => slots.default({ node, data, store })\n : undefined\n )\n },\n filterNodeMethod: (value, data, node) => {\n if (props.filterNodeMethod)\n return props.filterNodeMethod(value, data, node)\n if (!value) return true\n return getNodeValByProp('label', data)?.includes(value)\n },\n onNodeClick: (data, node, e) => {\n attrs.onNodeClick?.(data, node, e)\n\n // `onCheck` is trigger when `checkOnClickNode`\n if (props.showCheckbox && props.checkOnClickNode) return\n\n // now `checkOnClickNode` is false, only no checkbox and `checkStrictly` or `isLeaf`\n if (!props.showCheckbox && (props.checkStrictly || node.isLeaf)) {\n if (!getNodeValByProp('disabled', data)) {\n const option = select.value?.options.get(\n getNodeValByProp('value', data)\n )\n select.value?.handleOptionSelect(option, true)\n }\n } else if (props.expandOnClickNode) {\n e.proxy.handleExpandIconClick()\n }\n },\n onCheck: (data, params) => {\n attrs.onCheck?.(data, params)\n\n const dataValue = getNodeValByProp('value', data)\n if (props.checkStrictly) {\n emit(\n UPDATE_MODEL_EVENT,\n // Checking for changes may come from `check-on-node-click`\n props.multiple\n ? params.checkedKeys\n : params.checkedKeys.includes(dataValue)\n ? dataValue\n : undefined\n )\n }\n // only can select leaf node\n else {\n if (props.multiple) {\n emit(\n UPDATE_MODEL_EVENT,\n (tree.value as InstanceType<typeof ElTree>).getCheckedKeys(true)\n )\n } else {\n // select first leaf node when check parent\n const firstLeaf = treeFind(\n [data],\n (data) =>\n !isValidArray(getNodeValByProp('children', data)) &&\n !getNodeValByProp('disabled', data),\n (data) => getNodeValByProp('children', data)\n )\n const firstLeafKey = firstLeaf\n ? getNodeValByProp('value', firstLeaf)\n : undefined\n\n // unselect when any child checked\n const hasCheckedChild =\n isValidValue(props.modelValue) &&\n !!treeFind(\n [data],\n (data) => getNodeValByProp('value', data) === props.modelValue,\n (data) => getNodeValByProp('children', data)\n )\n\n emit(\n UPDATE_MODEL_EVENT,\n firstLeafKey === props.modelValue || hasCheckedChild\n ? undefined\n : firstLeafKey\n )\n }\n }\n },\n\n // else\n cacheOptions,\n }\n}\n"],"names":["watch","nextTick","isEqual","toValidArray","computed","isFunction","treeFind","isValidValue","treeEach","pick","toRefs","ElTree","TreeSelectOption","UPDATE_MODEL_EVENT","isValidArray"],"mappings":"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"}
1
+ {"version":3,"file":"tree.js","sources":["../../../../../../packages/components/tree-select/src/tree.ts"],"sourcesContent":["// @ts-nocheck\nimport { computed, nextTick, toRefs } from 'vue'\nimport { watch } from '../../config-provider'\nimport { isEqual, pick } from 'lodash-unified'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { isFunction } from '@element-plus/utils'\nimport ElTree from '@element-plus/components/tree'\nimport TreeSelectOption from './tree-select-option'\nimport {\n isValidArray,\n isValidValue,\n toValidArray,\n treeEach,\n treeFind,\n} from './utils'\nimport type { CacheOption } from './cache-options'\nimport type { Ref } from 'vue'\nimport type ElSelect from '@element-plus/components/select'\nimport type Node from '@element-plus/components/tree/src/model/node'\nimport type { TreeNodeData } from '@element-plus/components/tree/src/tree.type'\n\nexport const useTree = (\n props,\n { attrs, slots, emit },\n {\n select,\n tree,\n key,\n }: {\n select: Ref<InstanceType<typeof ElSelect> | undefined>\n tree: Ref<InstanceType<typeof ElTree> | undefined>\n key: Ref<string>\n }\n) => {\n watch(\n () => props.modelValue,\n () => {\n if (props.showCheckbox) {\n nextTick(() => {\n const treeInstance = tree.value\n if (\n treeInstance &&\n !isEqual(\n treeInstance.getCheckedKeys(),\n toValidArray(props.modelValue)\n )\n ) {\n treeInstance.setCheckedKeys(toValidArray(props.modelValue))\n }\n })\n }\n },\n {\n immediate: true,\n deep: true,\n }\n )\n\n const propsMap = computed(() => ({\n value: key.value,\n label: 'label',\n children: 'children',\n disabled: 'disabled',\n isLeaf: 'isLeaf',\n ...props.props,\n }))\n\n const getNodeValByProp = (\n prop: 'value' | 'label' | 'children' | 'disabled' | 'isLeaf',\n data: TreeNodeData\n ) => {\n const propVal = propsMap.value[prop]\n if (isFunction(propVal)) {\n return propVal(\n data,\n tree.value?.getNode(getNodeValByProp('value', data)) as Node\n )\n } else {\n return data[propVal as string]\n }\n }\n\n const defaultExpandedParentKeys = toValidArray(props.modelValue)\n .map((value) => {\n return treeFind(\n props.data || [],\n (data) => getNodeValByProp('value', data) === value,\n (data) => getNodeValByProp('children', data),\n (data, index, array, parent) =>\n parent && getNodeValByProp('value', parent)\n )\n })\n .filter((item) => isValidValue(item))\n\n const cacheOptions = computed(() => {\n if (!props.renderAfterExpand && !props.lazy) return []\n\n const options: CacheOption[] = []\n\n treeEach(\n props.data.concat(props.cacheData),\n (node) => {\n const value = getNodeValByProp('value', node)\n options.push({\n value,\n currentLabel: getNodeValByProp('label', node),\n isDisabled: getNodeValByProp('disabled', node),\n })\n },\n (data) => getNodeValByProp('children', data)\n )\n\n return options\n })\n\n const cacheOptionsMap = computed(() => {\n return cacheOptions.value.reduce(\n (prev, next) => ({ ...prev, [next.value]: next }),\n {}\n )\n })\n\n return {\n ...pick(toRefs(props), Object.keys(ElTree.props)),\n ...attrs,\n nodeKey: key,\n\n // only expand on click node when the `check-strictly` is false\n expandOnClickNode: computed(() => {\n return !props.checkStrictly && props.expandOnClickNode\n }),\n\n // show current selected node only first time,\n // fix the problem of expanding multiple nodes when checking multiple nodes\n defaultExpandedKeys: computed(() => {\n return props.defaultExpandedKeys\n ? props.defaultExpandedKeys.concat(defaultExpandedParentKeys)\n : defaultExpandedParentKeys\n }),\n\n renderContent: (h, { node, data, store }) => {\n return h(\n TreeSelectOption,\n {\n value: getNodeValByProp('value', data),\n label: getNodeValByProp('label', data),\n disabled: getNodeValByProp('disabled', data),\n },\n props.renderContent\n ? () => props.renderContent(h, { node, data, store })\n : slots.default\n ? () => slots.default({ node, data, store })\n : undefined\n )\n },\n filterNodeMethod: (value, data, node) => {\n if (props.filterNodeMethod)\n return props.filterNodeMethod(value, data, node)\n if (!value) return true\n return getNodeValByProp('label', data)?.includes(value)\n },\n onNodeClick: (data, node, e) => {\n attrs.onNodeClick?.(data, node, e)\n\n // `onCheck` is trigger when `checkOnClickNode`\n if (props.showCheckbox && props.checkOnClickNode) return\n\n // now `checkOnClickNode` is false, only no checkbox and `checkStrictly` or `isLeaf`\n if (!props.showCheckbox && (props.checkStrictly || node.isLeaf)) {\n if (!getNodeValByProp('disabled', data)) {\n const option = select.value?.options.get(\n getNodeValByProp('value', data)\n )\n select.value?.handleOptionSelect(option, true)\n }\n } else if (props.expandOnClickNode) {\n e.proxy.handleExpandIconClick()\n }\n },\n onCheck: (data, params) => {\n // ignore when no checkbox, like only `checkOnClickNode` is true\n if (!props.showCheckbox) return\n\n const dataValue = getNodeValByProp('value', data)\n\n // fix: checkedKeys has not cached keys\n const uncachedCheckedKeys = params.checkedKeys\n const cachedKeys = props.multiple\n ? toValidArray(props.modelValue).filter(\n (item) =>\n item in cacheOptionsMap.value &&\n !tree.value.getNode(item) &&\n !uncachedCheckedKeys.includes(item)\n )\n : []\n const checkedKeys = uncachedCheckedKeys.concat(cachedKeys)\n\n if (props.checkStrictly) {\n emit(\n UPDATE_MODEL_EVENT,\n // Checking for changes may come from `check-on-node-click`\n props.multiple\n ? checkedKeys\n : checkedKeys.includes(dataValue)\n ? dataValue\n : undefined\n )\n }\n // only can select leaf node\n else {\n if (props.multiple) {\n emit(\n UPDATE_MODEL_EVENT,\n (tree.value as InstanceType<typeof ElTree>).getCheckedKeys(true)\n )\n } else {\n // select first leaf node when check parent\n const firstLeaf = treeFind(\n [data],\n (data) =>\n !isValidArray(getNodeValByProp('children', data)) &&\n !getNodeValByProp('disabled', data),\n (data) => getNodeValByProp('children', data)\n )\n const firstLeafKey = firstLeaf\n ? getNodeValByProp('value', firstLeaf)\n : undefined\n\n // unselect when any child checked\n const hasCheckedChild =\n isValidValue(props.modelValue) &&\n !!treeFind(\n [data],\n (data) => getNodeValByProp('value', data) === props.modelValue,\n (data) => getNodeValByProp('children', data)\n )\n\n emit(\n UPDATE_MODEL_EVENT,\n firstLeafKey === props.modelValue || hasCheckedChild\n ? undefined\n : firstLeafKey\n )\n }\n }\n\n nextTick(() => {\n const checkedKeys = toValidArray(props.modelValue)\n tree.value.setCheckedKeys(checkedKeys)\n\n attrs.onCheck?.(data, {\n checkedKeys: tree.value.getCheckedKeys(),\n checkedNodes: tree.value.getCheckedNodes(),\n halfCheckedKeys: tree.value.getHalfCheckedKeys(),\n halfCheckedNodes: tree.value.getHalfCheckedNodes(),\n })\n })\n },\n\n // else\n cacheOptions,\n }\n}\n"],"names":["watch","nextTick","isEqual","toValidArray","computed","isFunction","treeFind","isValidValue","treeEach","pick","toRefs","ElTree","TreeSelectOption","UPDATE_MODEL_EVENT","isValidArray"],"mappings":"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"}
@@ -6,7 +6,7 @@ require('../../utils/index.js');
6
6
  var upload$1 = require('./src/upload2.js');
7
7
  var upload = require('./src/upload.js');
8
8
  var uploadContent = require('./src/upload-content.js');
9
- var uploadList = require('./src/upload-list2.js');
9
+ var uploadList = require('./src/upload-list.js');
10
10
  var uploadDragger = require('./src/upload-dragger.js');
11
11
  var constants = require('./src/constants.js');
12
12
  var install = require('../../utils/vue/install.js');
@@ -58,9 +58,13 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
58
58
  let hookResult;
59
59
  let beforeData = {};
60
60
  try {
61
+ const originData = props.data;
61
62
  const beforeUploadPromise = props.beforeUpload(rawFile);
62
63
  beforeData = shared.isObject(props.data) && !vue.isReactive(props.data) ? lodashUnified.cloneDeep(props.data) : props.data;
63
64
  hookResult = await beforeUploadPromise;
65
+ if (shared.isObject(props.data) && lodashUnified.isEqual(originData, beforeData)) {
66
+ beforeData = lodashUnified.cloneDeep(props.data);
67
+ }
64
68
  } catch (e) {
65
69
  hookResult = false;
66
70
  }