element-pe 2.2.55 → 2.2.57

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 (643) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +112 -39
  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 +112 -39
  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 +76 -35
  21. package/es/components/avatar/src/avatar.mjs.map +1 -1
  22. package/es/components/avatar/src/avatar2.mjs +35 -76
  23. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  24. package/es/components/carousel/index.d.ts +10 -0
  25. package/es/components/carousel/index.mjs +2 -2
  26. package/es/components/carousel/src/carousel-item.mjs +8 -63
  27. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  28. package/es/components/carousel/src/carousel-item.vue.d.ts +1 -0
  29. package/es/components/carousel/src/carousel-item2.mjs +69 -8
  30. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  31. package/es/components/carousel/src/carousel.mjs +7 -2
  32. package/es/components/carousel/src/carousel.mjs.map +1 -1
  33. package/es/components/carousel/src/carousel.vue.d.ts +8 -0
  34. package/es/components/carousel/src/constants.d.ts +1 -0
  35. package/es/components/carousel/src/constants.mjs.map +1 -1
  36. package/es/components/carousel/src/use-carousel-item.d.ts +1 -0
  37. package/es/components/carousel/src/use-carousel-item.mjs +7 -5
  38. package/es/components/carousel/src/use-carousel-item.mjs.map +1 -1
  39. package/es/components/carousel/src/use-carousel.d.ts +8 -0
  40. package/es/components/carousel/src/use-carousel.mjs +21 -1
  41. package/es/components/carousel/src/use-carousel.mjs.map +1 -1
  42. package/es/components/cascader/index.d.ts +16 -16
  43. package/es/components/cascader/src/cascader.mjs +2 -2
  44. package/es/components/cascader/src/cascader.vue.d.ts +8 -8
  45. package/es/components/cascader-panel/src/index.mjs +1 -1
  46. package/es/components/cascader-panel/src/menu.mjs +1 -1
  47. package/es/components/cascader-panel/src/node.mjs +209 -116
  48. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  49. package/es/components/cascader-panel/src/node2.mjs +116 -209
  50. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  51. package/es/components/cascader-panel/src/store.mjs +1 -1
  52. package/es/components/check-tag/index.d.ts +1 -0
  53. package/es/components/check-tag/index.mjs +2 -2
  54. package/es/components/check-tag/src/check-tag.mjs +12 -30
  55. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  56. package/es/components/check-tag/src/check-tag.vue.d.ts +1 -0
  57. package/es/components/check-tag/src/check-tag2.mjs +31 -12
  58. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  59. package/es/components/collapse/index.mjs +2 -2
  60. package/es/components/collapse/src/collapse-item.mjs +14 -96
  61. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  62. package/es/components/collapse/src/collapse-item2.mjs +96 -14
  63. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  64. package/es/components/collection/index.mjs +1 -1
  65. package/es/components/collection/src/collection.mjs +62 -10
  66. package/es/components/collection/src/collection.mjs.map +1 -1
  67. package/es/components/collection/src/collection2.mjs +10 -62
  68. package/es/components/collection/src/collection2.mjs.map +1 -1
  69. package/es/components/color-picker/index.mjs +2 -2
  70. package/es/components/color-picker/src/color-picker.mjs +46 -333
  71. package/es/components/color-picker/src/color-picker.mjs.map +1 -1
  72. package/es/components/color-picker/src/color-picker2.mjs +333 -46
  73. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  74. package/es/components/color-picker/src/components/predefine.mjs +1 -1
  75. package/es/components/countdown/index.mjs +2 -2
  76. package/es/components/countdown/src/countdown.mjs +23 -76
  77. package/es/components/countdown/src/countdown.mjs.map +1 -1
  78. package/es/components/countdown/src/countdown2.mjs +76 -23
  79. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  80. package/es/components/descriptions/index.mjs +2 -2
  81. package/es/components/descriptions/src/description.mjs +120 -27
  82. package/es/components/descriptions/src/description.mjs.map +1 -1
  83. package/es/components/descriptions/src/description2.mjs +27 -120
  84. package/es/components/descriptions/src/description2.mjs.map +1 -1
  85. package/es/components/dialog/index.mjs +2 -2
  86. package/es/components/dialog/src/dialog.mjs +73 -174
  87. package/es/components/dialog/src/dialog.mjs.map +1 -1
  88. package/es/components/dialog/src/dialog2.mjs +174 -73
  89. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  90. package/es/components/drawer/index.mjs +2 -2
  91. package/es/components/drawer/src/drawer.mjs +186 -25
  92. package/es/components/drawer/src/drawer.mjs.map +1 -1
  93. package/es/components/drawer/src/drawer2.mjs +25 -186
  94. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  95. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  96. package/es/components/dropdown/src/dropdown.mjs +3 -3
  97. package/es/components/empty/src/empty.mjs.map +1 -1
  98. package/es/components/form/index.mjs +2 -2
  99. package/es/components/form/src/form.mjs +150 -57
  100. package/es/components/form/src/form.mjs.map +1 -1
  101. package/es/components/form/src/form2.mjs +57 -150
  102. package/es/components/form/src/form2.mjs.map +1 -1
  103. package/es/components/image/index.mjs +2 -2
  104. package/es/components/image/src/image.mjs +65 -226
  105. package/es/components/image/src/image.mjs.map +1 -1
  106. package/es/components/image/src/image2.mjs +226 -65
  107. package/es/components/image/src/image2.mjs.map +1 -1
  108. package/es/components/index.mjs +36 -36
  109. package/es/components/input/index.mjs +2 -2
  110. package/es/components/input/src/input.mjs +108 -458
  111. package/es/components/input/src/input.mjs.map +1 -1
  112. package/es/components/input/src/input2.mjs +458 -108
  113. package/es/components/input/src/input2.mjs.map +1 -1
  114. package/es/components/input-number/index.mjs +2 -2
  115. package/es/components/input-number/src/input-number.mjs +318 -58
  116. package/es/components/input-number/src/input-number.mjs.map +1 -1
  117. package/es/components/input-number/src/input-number2.mjs +58 -315
  118. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  119. package/es/components/link/index.mjs +2 -2
  120. package/es/components/link/src/link.mjs +50 -21
  121. package/es/components/link/src/link.mjs.map +1 -1
  122. package/es/components/link/src/link2.mjs +21 -50
  123. package/es/components/link/src/link2.mjs.map +1 -1
  124. package/es/components/loading/src/service.mjs +2 -2
  125. package/es/components/loading/src/service.mjs.map +1 -1
  126. package/es/components/menu/index.mjs +2 -2
  127. package/es/components/menu/src/menu-item-group.mjs +4 -35
  128. package/es/components/menu/src/menu-item-group.mjs.map +1 -1
  129. package/es/components/menu/src/menu-item-group2.mjs +35 -4
  130. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  131. package/es/components/menu/src/menu.mjs +1 -1
  132. package/es/components/menu/src/menu.mjs.map +1 -1
  133. package/es/components/notification/index.mjs +1 -1
  134. package/es/components/notification/src/notification.mjs +149 -69
  135. package/es/components/notification/src/notification.mjs.map +1 -1
  136. package/es/components/notification/src/notification2.mjs +69 -149
  137. package/es/components/notification/src/notification2.mjs.map +1 -1
  138. package/es/components/notification/src/notify.mjs +2 -2
  139. package/es/components/page-header/src/page-header.mjs.map +1 -1
  140. package/es/components/pagination/src/components/jumper.mjs +9 -60
  141. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  142. package/es/components/pagination/src/components/jumper2.mjs +60 -9
  143. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  144. package/es/components/pagination/src/components/next.mjs +38 -19
  145. package/es/components/pagination/src/components/next.mjs.map +1 -1
  146. package/es/components/pagination/src/components/next2.mjs +19 -38
  147. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  148. package/es/components/pagination/src/components/prev.mjs +38 -18
  149. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  150. package/es/components/pagination/src/components/prev2.mjs +18 -38
  151. package/es/components/pagination/src/components/prev2.mjs.map +1 -1
  152. package/es/components/pagination/src/pagination.mjs +3 -3
  153. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  154. package/es/components/popover/index.mjs +2 -2
  155. package/es/components/popover/src/popover.mjs +66 -111
  156. package/es/components/popover/src/popover.mjs.map +1 -1
  157. package/es/components/popover/src/popover2.mjs +111 -66
  158. package/es/components/popover/src/popover2.mjs.map +1 -1
  159. package/es/components/popper/index.mjs +4 -4
  160. package/es/components/popper/src/content.mjs +94 -139
  161. package/es/components/popper/src/content.mjs.map +1 -1
  162. package/es/components/popper/src/content2.mjs +139 -94
  163. package/es/components/popper/src/content2.mjs.map +1 -1
  164. package/es/components/popper/src/popper.mjs +32 -25
  165. package/es/components/popper/src/popper.mjs.map +1 -1
  166. package/es/components/popper/src/popper2.mjs +25 -32
  167. package/es/components/popper/src/popper2.mjs.map +1 -1
  168. package/es/components/progress/src/progress.mjs.map +1 -1
  169. package/es/components/radio/index.mjs +4 -4
  170. package/es/components/radio/src/radio-button.mjs +9 -64
  171. package/es/components/radio/src/radio-button.mjs.map +1 -1
  172. package/es/components/radio/src/radio-button2.mjs +64 -9
  173. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  174. package/es/components/radio/src/radio-group.mjs +36 -70
  175. package/es/components/radio/src/radio-group.mjs.map +1 -1
  176. package/es/components/radio/src/radio-group2.mjs +70 -36
  177. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  178. package/es/components/rate/index.mjs +2 -2
  179. package/es/components/rate/src/rate.mjs +257 -87
  180. package/es/components/rate/src/rate.mjs.map +1 -1
  181. package/es/components/rate/src/rate2.mjs +87 -257
  182. package/es/components/rate/src/rate2.mjs.map +1 -1
  183. package/es/components/result/src/result.mjs.map +1 -1
  184. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  185. package/es/components/row/index.mjs +2 -2
  186. package/es/components/row/src/row.mjs +30 -45
  187. package/es/components/row/src/row.mjs.map +1 -1
  188. package/es/components/row/src/row2.mjs +45 -30
  189. package/es/components/row/src/row2.mjs.map +1 -1
  190. package/es/components/scrollbar/src/bar.mjs +17 -42
  191. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  192. package/es/components/scrollbar/src/bar2.mjs +42 -17
  193. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  194. package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
  195. package/es/components/select/src/select.mjs +2 -2
  196. package/es/components/select/src/useSelect.mjs +4 -0
  197. package/es/components/select/src/useSelect.mjs.map +1 -1
  198. package/es/components/select-v2/src/defaults.mjs +1 -1
  199. package/es/components/select-v2/src/useSelect.mjs +1 -1
  200. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  201. package/es/components/skeleton/index.mjs +4 -4
  202. package/es/components/skeleton/src/skeleton-item.mjs +23 -18
  203. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  204. package/es/components/skeleton/src/skeleton-item2.mjs +18 -23
  205. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  206. package/es/components/skeleton/src/skeleton.mjs +22 -49
  207. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  208. package/es/components/skeleton/src/skeleton2.mjs +49 -22
  209. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  210. package/es/components/slider/index.mjs +2 -2
  211. package/es/components/slider/src/slider.mjs +233 -91
  212. package/es/components/slider/src/slider.mjs.map +1 -1
  213. package/es/components/slider/src/slider2.mjs +91 -233
  214. package/es/components/slider/src/slider2.mjs.map +1 -1
  215. package/es/components/statistic/index.mjs +2 -2
  216. package/es/components/statistic/src/statistic.mjs +70 -25
  217. package/es/components/statistic/src/statistic.mjs.map +1 -1
  218. package/es/components/statistic/src/statistic2.mjs +25 -70
  219. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  220. package/es/components/steps/index.d.ts +2 -0
  221. package/es/components/steps/index.mjs +2 -2
  222. package/es/components/steps/src/item.mjs +9 -6
  223. package/es/components/steps/src/item.mjs.map +1 -1
  224. package/es/components/steps/src/item.vue.d.ts +1 -0
  225. package/es/components/steps/src/steps.mjs +36 -34
  226. package/es/components/steps/src/steps.mjs.map +1 -1
  227. package/es/components/steps/src/steps2.mjs +34 -36
  228. package/es/components/steps/src/steps2.mjs.map +1 -1
  229. package/es/components/table/src/table-header/event-helper.mjs +6 -2
  230. package/es/components/table/src/table-header/event-helper.mjs.map +1 -1
  231. package/es/components/table-v2/src/renderers/cell.mjs +1 -1
  232. package/es/components/table-v2/src/renderers/cell.mjs.map +1 -1
  233. package/es/components/tabs/index.mjs +2 -2
  234. package/es/components/tabs/src/tab-pane.mjs +14 -73
  235. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  236. package/es/components/tabs/src/tab-pane2.mjs +73 -14
  237. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  238. package/es/components/tag/index.d.ts +8 -8
  239. package/es/components/tag/index.mjs +2 -2
  240. package/es/components/tag/src/tag.d.ts +2 -2
  241. package/es/components/tag/src/tag.mjs +33 -98
  242. package/es/components/tag/src/tag.mjs.map +1 -1
  243. package/es/components/tag/src/tag.vue.d.ts +8 -8
  244. package/es/components/tag/src/tag2.mjs +98 -33
  245. package/es/components/tag/src/tag2.mjs.map +1 -1
  246. package/es/components/teleport/index.mjs +2 -2
  247. package/es/components/teleport/src/teleport.mjs +44 -18
  248. package/es/components/teleport/src/teleport.mjs.map +1 -1
  249. package/es/components/teleport/src/teleport2.mjs +18 -44
  250. package/es/components/teleport/src/teleport2.mjs.map +1 -1
  251. package/es/components/text/index.mjs +2 -2
  252. package/es/components/text/src/text.mjs +22 -35
  253. package/es/components/text/src/text.mjs.map +1 -1
  254. package/es/components/text/src/text2.mjs +35 -22
  255. package/es/components/text/src/text2.mjs.map +1 -1
  256. package/es/components/time-select/index.mjs +1 -1
  257. package/es/components/time-select/src/time-select.mjs +48 -118
  258. package/es/components/time-select/src/time-select.mjs.map +1 -1
  259. package/es/components/time-select/src/time-select2.mjs +118 -48
  260. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  261. package/es/components/timeline/index.d.ts +38 -0
  262. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  263. package/es/components/timeline/src/timeline-item.vue.d.ts +19 -0
  264. package/es/components/timeline/src/timeline-item2.mjs +9 -7
  265. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  266. package/es/components/tooltip/index.mjs +2 -2
  267. package/es/components/tooltip/src/content.mjs +31 -179
  268. package/es/components/tooltip/src/content.mjs.map +1 -1
  269. package/es/components/tooltip/src/content2.mjs +179 -31
  270. package/es/components/tooltip/src/content2.mjs.map +1 -1
  271. package/es/components/tooltip/src/tooltip.mjs +3 -3
  272. package/es/components/tooltip/src/tooltip2.mjs +2 -2
  273. package/es/components/tooltip/src/trigger.mjs +16 -73
  274. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  275. package/es/components/tooltip/src/trigger2.mjs +73 -16
  276. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  277. package/es/components/tooltip-v2/index.mjs +3 -3
  278. package/es/components/tooltip-v2/src/arrow.mjs +22 -37
  279. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  280. package/es/components/tooltip-v2/src/arrow2.mjs +37 -22
  281. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  282. package/es/components/tooltip-v2/src/content2.mjs +1 -1
  283. package/es/components/tooltip-v2/src/root.mjs +17 -82
  284. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  285. package/es/components/tooltip-v2/src/root2.mjs +82 -17
  286. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  287. package/es/components/tooltip-v2/src/tooltip.mjs +6 -6
  288. package/es/components/tooltip-v2/src/tooltip2.mjs +3 -3
  289. package/es/components/tooltip-v2/src/trigger.mjs +12 -91
  290. package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
  291. package/es/components/tooltip-v2/src/trigger2.mjs +91 -12
  292. package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
  293. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  294. package/es/components/transfer/src/transfer-panel.mjs +19 -128
  295. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  296. package/es/components/transfer/src/transfer-panel2.mjs +128 -19
  297. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  298. package/es/components/transfer/src/transfer2.mjs +1 -1
  299. package/es/components/tree/index.d.ts +2 -2
  300. package/es/components/tree/src/model/useDragNode.mjs +2 -2
  301. package/es/components/tree/src/model/useDragNode.mjs.map +1 -1
  302. package/es/components/tree/src/tree.type.d.ts +1 -1
  303. package/es/components/tree/src/tree.vue.d.ts +1 -1
  304. package/es/components/tree-select/src/tree-select.mjs.map +1 -1
  305. package/es/components/tree-select/src/tree.mjs +20 -3
  306. package/es/components/tree-select/src/tree.mjs.map +1 -1
  307. package/es/components/upload/index.mjs +1 -1
  308. package/es/components/upload/src/upload-content.mjs +6 -2
  309. package/es/components/upload/src/upload-content.mjs.map +1 -1
  310. package/es/components/upload/src/upload-dragger.mjs +11 -72
  311. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  312. package/es/components/upload/src/upload-dragger2.mjs +72 -11
  313. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  314. package/es/components/visual-hidden/index.mjs +3 -3
  315. package/es/components/visual-hidden/src/visual-hidden.mjs +7 -35
  316. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  317. package/es/components/visual-hidden/src/visual-hidden2.mjs +35 -7
  318. package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
  319. package/es/index.mjs +36 -36
  320. package/es/locale/lang/fa.mjs +20 -20
  321. package/es/locale/lang/fa.mjs.map +1 -1
  322. package/es/utils/types.mjs +2 -2
  323. package/es/utils/types.mjs.map +1 -1
  324. package/lib/components/autocomplete/index.js +2 -2
  325. package/lib/components/autocomplete/src/autocomplete.js +361 -82
  326. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  327. package/lib/components/autocomplete/src/autocomplete2.js +82 -361
  328. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  329. package/lib/components/avatar/index.js +2 -2
  330. package/lib/components/avatar/src/avatar.js +75 -35
  331. package/lib/components/avatar/src/avatar.js.map +1 -1
  332. package/lib/components/avatar/src/avatar2.js +35 -75
  333. package/lib/components/avatar/src/avatar2.js.map +1 -1
  334. package/lib/components/carousel/index.d.ts +10 -0
  335. package/lib/components/carousel/index.js +2 -2
  336. package/lib/components/carousel/src/carousel-item.js +8 -63
  337. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  338. package/lib/components/carousel/src/carousel-item.vue.d.ts +1 -0
  339. package/lib/components/carousel/src/carousel-item2.js +69 -8
  340. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  341. package/lib/components/carousel/src/carousel.js +7 -2
  342. package/lib/components/carousel/src/carousel.js.map +1 -1
  343. package/lib/components/carousel/src/carousel.vue.d.ts +8 -0
  344. package/lib/components/carousel/src/constants.d.ts +1 -0
  345. package/lib/components/carousel/src/constants.js.map +1 -1
  346. package/lib/components/carousel/src/use-carousel-item.d.ts +1 -0
  347. package/lib/components/carousel/src/use-carousel-item.js +7 -5
  348. package/lib/components/carousel/src/use-carousel-item.js.map +1 -1
  349. package/lib/components/carousel/src/use-carousel.d.ts +8 -0
  350. package/lib/components/carousel/src/use-carousel.js +21 -1
  351. package/lib/components/carousel/src/use-carousel.js.map +1 -1
  352. package/lib/components/cascader/index.d.ts +16 -16
  353. package/lib/components/cascader/src/cascader.js +2 -2
  354. package/lib/components/cascader/src/cascader.vue.d.ts +8 -8
  355. package/lib/components/cascader-panel/src/index.js +1 -1
  356. package/lib/components/cascader-panel/src/menu.js +1 -1
  357. package/lib/components/cascader-panel/src/node.js +209 -116
  358. package/lib/components/cascader-panel/src/node.js.map +1 -1
  359. package/lib/components/cascader-panel/src/node2.js +116 -209
  360. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  361. package/lib/components/cascader-panel/src/store.js +1 -1
  362. package/lib/components/check-tag/index.d.ts +1 -0
  363. package/lib/components/check-tag/index.js +2 -2
  364. package/lib/components/check-tag/src/check-tag.js +13 -30
  365. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  366. package/lib/components/check-tag/src/check-tag.vue.d.ts +1 -0
  367. package/lib/components/check-tag/src/check-tag2.js +31 -13
  368. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  369. package/lib/components/collapse/index.js +2 -2
  370. package/lib/components/collapse/src/collapse-item.js +14 -96
  371. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  372. package/lib/components/collapse/src/collapse-item2.js +96 -14
  373. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  374. package/lib/components/collection/index.js +1 -1
  375. package/lib/components/collection/src/collection.js +62 -9
  376. package/lib/components/collection/src/collection.js.map +1 -1
  377. package/lib/components/collection/src/collection2.js +9 -62
  378. package/lib/components/collection/src/collection2.js.map +1 -1
  379. package/lib/components/color-picker/index.js +2 -2
  380. package/lib/components/color-picker/src/color-picker.js +46 -331
  381. package/lib/components/color-picker/src/color-picker.js.map +1 -1
  382. package/lib/components/color-picker/src/color-picker2.js +331 -46
  383. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  384. package/lib/components/color-picker/src/components/predefine.js +1 -1
  385. package/lib/components/countdown/index.js +2 -2
  386. package/lib/components/countdown/src/countdown.js +24 -76
  387. package/lib/components/countdown/src/countdown.js.map +1 -1
  388. package/lib/components/countdown/src/countdown2.js +76 -24
  389. package/lib/components/countdown/src/countdown2.js.map +1 -1
  390. package/lib/components/descriptions/index.js +2 -2
  391. package/lib/components/descriptions/src/description.js +120 -27
  392. package/lib/components/descriptions/src/description.js.map +1 -1
  393. package/lib/components/descriptions/src/description2.js +27 -120
  394. package/lib/components/descriptions/src/description2.js.map +1 -1
  395. package/lib/components/dialog/index.js +2 -2
  396. package/lib/components/dialog/src/dialog.js +74 -174
  397. package/lib/components/dialog/src/dialog.js.map +1 -1
  398. package/lib/components/dialog/src/dialog2.js +174 -74
  399. package/lib/components/dialog/src/dialog2.js.map +1 -1
  400. package/lib/components/drawer/index.js +2 -2
  401. package/lib/components/drawer/src/drawer.js +186 -26
  402. package/lib/components/drawer/src/drawer.js.map +1 -1
  403. package/lib/components/drawer/src/drawer2.js +26 -186
  404. package/lib/components/drawer/src/drawer2.js.map +1 -1
  405. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  406. package/lib/components/dropdown/src/dropdown.js +3 -3
  407. package/lib/components/empty/src/empty.js.map +1 -1
  408. package/lib/components/form/index.js +2 -2
  409. package/lib/components/form/src/form.js +149 -57
  410. package/lib/components/form/src/form.js.map +1 -1
  411. package/lib/components/form/src/form2.js +57 -149
  412. package/lib/components/form/src/form2.js.map +1 -1
  413. package/lib/components/image/index.js +2 -2
  414. package/lib/components/image/src/image.js +65 -225
  415. package/lib/components/image/src/image.js.map +1 -1
  416. package/lib/components/image/src/image2.js +225 -65
  417. package/lib/components/image/src/image2.js.map +1 -1
  418. package/lib/components/index.js +36 -36
  419. package/lib/components/input/index.js +2 -2
  420. package/lib/components/input/src/input.js +108 -457
  421. package/lib/components/input/src/input.js.map +1 -1
  422. package/lib/components/input/src/input2.js +457 -108
  423. package/lib/components/input/src/input2.js.map +1 -1
  424. package/lib/components/input-number/index.js +2 -2
  425. package/lib/components/input-number/src/input-number.js +316 -57
  426. package/lib/components/input-number/src/input-number.js.map +1 -1
  427. package/lib/components/input-number/src/input-number2.js +57 -313
  428. package/lib/components/input-number/src/input-number2.js.map +1 -1
  429. package/lib/components/link/index.js +2 -2
  430. package/lib/components/link/src/link.js +50 -22
  431. package/lib/components/link/src/link.js.map +1 -1
  432. package/lib/components/link/src/link2.js +22 -50
  433. package/lib/components/link/src/link2.js.map +1 -1
  434. package/lib/components/loading/src/service.js +2 -2
  435. package/lib/components/loading/src/service.js.map +1 -1
  436. package/lib/components/menu/index.js +2 -2
  437. package/lib/components/menu/src/menu-item-group.js +4 -35
  438. package/lib/components/menu/src/menu-item-group.js.map +1 -1
  439. package/lib/components/menu/src/menu-item-group2.js +35 -4
  440. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  441. package/lib/components/menu/src/menu.js +1 -1
  442. package/lib/components/menu/src/menu.js.map +1 -1
  443. package/lib/components/notification/index.js +1 -1
  444. package/lib/components/notification/src/notification.js +148 -70
  445. package/lib/components/notification/src/notification.js.map +1 -1
  446. package/lib/components/notification/src/notification2.js +70 -148
  447. package/lib/components/notification/src/notification2.js.map +1 -1
  448. package/lib/components/notification/src/notify.js +2 -2
  449. package/lib/components/page-header/src/page-header.js.map +1 -1
  450. package/lib/components/pagination/src/components/jumper.js +9 -60
  451. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  452. package/lib/components/pagination/src/components/jumper2.js +60 -9
  453. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  454. package/lib/components/pagination/src/components/next.js +38 -19
  455. package/lib/components/pagination/src/components/next.js.map +1 -1
  456. package/lib/components/pagination/src/components/next2.js +19 -38
  457. package/lib/components/pagination/src/components/next2.js.map +1 -1
  458. package/lib/components/pagination/src/components/prev.js +38 -19
  459. package/lib/components/pagination/src/components/prev.js.map +1 -1
  460. package/lib/components/pagination/src/components/prev2.js +19 -38
  461. package/lib/components/pagination/src/components/prev2.js.map +1 -1
  462. package/lib/components/pagination/src/pagination.js +3 -3
  463. package/lib/components/popconfirm/src/popconfirm.js +1 -1
  464. package/lib/components/popover/index.js +2 -2
  465. package/lib/components/popover/src/popover.js +67 -111
  466. package/lib/components/popover/src/popover.js.map +1 -1
  467. package/lib/components/popover/src/popover2.js +111 -67
  468. package/lib/components/popover/src/popover2.js.map +1 -1
  469. package/lib/components/popper/index.js +4 -4
  470. package/lib/components/popper/src/content.js +99 -139
  471. package/lib/components/popper/src/content.js.map +1 -1
  472. package/lib/components/popper/src/content2.js +139 -99
  473. package/lib/components/popper/src/content2.js.map +1 -1
  474. package/lib/components/popper/src/popper.js +32 -28
  475. package/lib/components/popper/src/popper.js.map +1 -1
  476. package/lib/components/popper/src/popper2.js +28 -32
  477. package/lib/components/popper/src/popper2.js.map +1 -1
  478. package/lib/components/progress/src/progress.js.map +1 -1
  479. package/lib/components/radio/index.js +4 -4
  480. package/lib/components/radio/src/radio-button.js +9 -64
  481. package/lib/components/radio/src/radio-button.js.map +1 -1
  482. package/lib/components/radio/src/radio-button2.js +64 -9
  483. package/lib/components/radio/src/radio-button2.js.map +1 -1
  484. package/lib/components/radio/src/radio-group.js +37 -70
  485. package/lib/components/radio/src/radio-group.js.map +1 -1
  486. package/lib/components/radio/src/radio-group2.js +70 -37
  487. package/lib/components/radio/src/radio-group2.js.map +1 -1
  488. package/lib/components/rate/index.js +2 -2
  489. package/lib/components/rate/src/rate.js +256 -87
  490. package/lib/components/rate/src/rate.js.map +1 -1
  491. package/lib/components/rate/src/rate2.js +87 -256
  492. package/lib/components/rate/src/rate2.js.map +1 -1
  493. package/lib/components/result/src/result.js.map +1 -1
  494. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  495. package/lib/components/row/index.js +2 -2
  496. package/lib/components/row/src/row.js +32 -45
  497. package/lib/components/row/src/row.js.map +1 -1
  498. package/lib/components/row/src/row2.js +45 -32
  499. package/lib/components/row/src/row2.js.map +1 -1
  500. package/lib/components/scrollbar/src/bar.js +17 -42
  501. package/lib/components/scrollbar/src/bar.js.map +1 -1
  502. package/lib/components/scrollbar/src/bar2.js +42 -17
  503. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  504. package/lib/components/scrollbar/src/scrollbar2.js +1 -1
  505. package/lib/components/select/src/select.js +2 -2
  506. package/lib/components/select/src/useSelect.js +4 -0
  507. package/lib/components/select/src/useSelect.js.map +1 -1
  508. package/lib/components/select-v2/src/defaults.js +1 -1
  509. package/lib/components/select-v2/src/useSelect.js +1 -1
  510. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  511. package/lib/components/skeleton/index.js +4 -4
  512. package/lib/components/skeleton/src/skeleton-item.js +23 -18
  513. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  514. package/lib/components/skeleton/src/skeleton-item2.js +18 -23
  515. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  516. package/lib/components/skeleton/src/skeleton.js +22 -49
  517. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  518. package/lib/components/skeleton/src/skeleton2.js +49 -22
  519. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  520. package/lib/components/slider/index.js +2 -2
  521. package/lib/components/slider/src/slider.js +233 -92
  522. package/lib/components/slider/src/slider.js.map +1 -1
  523. package/lib/components/slider/src/slider2.js +92 -233
  524. package/lib/components/slider/src/slider2.js.map +1 -1
  525. package/lib/components/statistic/index.js +2 -2
  526. package/lib/components/statistic/src/statistic.js +70 -25
  527. package/lib/components/statistic/src/statistic.js.map +1 -1
  528. package/lib/components/statistic/src/statistic2.js +25 -70
  529. package/lib/components/statistic/src/statistic2.js.map +1 -1
  530. package/lib/components/steps/index.d.ts +2 -0
  531. package/lib/components/steps/index.js +2 -2
  532. package/lib/components/steps/src/item.js +9 -6
  533. package/lib/components/steps/src/item.js.map +1 -1
  534. package/lib/components/steps/src/item.vue.d.ts +1 -0
  535. package/lib/components/steps/src/steps.js +37 -34
  536. package/lib/components/steps/src/steps.js.map +1 -1
  537. package/lib/components/steps/src/steps2.js +34 -37
  538. package/lib/components/steps/src/steps2.js.map +1 -1
  539. package/lib/components/table/src/table-header/event-helper.js +6 -2
  540. package/lib/components/table/src/table-header/event-helper.js.map +1 -1
  541. package/lib/components/table-v2/src/renderers/cell.js +1 -1
  542. package/lib/components/table-v2/src/renderers/cell.js.map +1 -1
  543. package/lib/components/tabs/index.js +2 -2
  544. package/lib/components/tabs/src/tab-pane.js +14 -73
  545. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  546. package/lib/components/tabs/src/tab-pane2.js +73 -14
  547. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  548. package/lib/components/tag/index.d.ts +8 -8
  549. package/lib/components/tag/index.js +2 -2
  550. package/lib/components/tag/src/tag.d.ts +2 -2
  551. package/lib/components/tag/src/tag.js +34 -98
  552. package/lib/components/tag/src/tag.js.map +1 -1
  553. package/lib/components/tag/src/tag.vue.d.ts +8 -8
  554. package/lib/components/tag/src/tag2.js +98 -34
  555. package/lib/components/tag/src/tag2.js.map +1 -1
  556. package/lib/components/teleport/index.js +2 -2
  557. package/lib/components/teleport/src/teleport.js +44 -18
  558. package/lib/components/teleport/src/teleport.js.map +1 -1
  559. package/lib/components/teleport/src/teleport2.js +18 -44
  560. package/lib/components/teleport/src/teleport2.js.map +1 -1
  561. package/lib/components/text/index.js +2 -2
  562. package/lib/components/text/src/text.js +22 -35
  563. package/lib/components/text/src/text.js.map +1 -1
  564. package/lib/components/text/src/text2.js +35 -22
  565. package/lib/components/text/src/text2.js.map +1 -1
  566. package/lib/components/time-select/index.js +1 -1
  567. package/lib/components/time-select/src/time-select.js +48 -123
  568. package/lib/components/time-select/src/time-select.js.map +1 -1
  569. package/lib/components/time-select/src/time-select2.js +123 -48
  570. package/lib/components/time-select/src/time-select2.js.map +1 -1
  571. package/lib/components/timeline/index.d.ts +38 -0
  572. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  573. package/lib/components/timeline/src/timeline-item.vue.d.ts +19 -0
  574. package/lib/components/timeline/src/timeline-item2.js +8 -6
  575. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  576. package/lib/components/tooltip/index.js +2 -2
  577. package/lib/components/tooltip/src/content.js +31 -179
  578. package/lib/components/tooltip/src/content.js.map +1 -1
  579. package/lib/components/tooltip/src/content2.js +179 -31
  580. package/lib/components/tooltip/src/content2.js.map +1 -1
  581. package/lib/components/tooltip/src/tooltip.js +3 -3
  582. package/lib/components/tooltip/src/tooltip2.js +2 -2
  583. package/lib/components/tooltip/src/trigger.js +16 -73
  584. package/lib/components/tooltip/src/trigger.js.map +1 -1
  585. package/lib/components/tooltip/src/trigger2.js +73 -16
  586. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  587. package/lib/components/tooltip-v2/index.js +3 -3
  588. package/lib/components/tooltip-v2/src/arrow.js +23 -37
  589. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  590. package/lib/components/tooltip-v2/src/arrow2.js +37 -23
  591. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  592. package/lib/components/tooltip-v2/src/content2.js +1 -1
  593. package/lib/components/tooltip-v2/src/root.js +17 -82
  594. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  595. package/lib/components/tooltip-v2/src/root2.js +82 -17
  596. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  597. package/lib/components/tooltip-v2/src/tooltip.js +6 -6
  598. package/lib/components/tooltip-v2/src/tooltip2.js +3 -3
  599. package/lib/components/tooltip-v2/src/trigger.js +12 -91
  600. package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
  601. package/lib/components/tooltip-v2/src/trigger2.js +91 -12
  602. package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
  603. package/lib/components/transfer/src/composables/use-check.js +1 -1
  604. package/lib/components/transfer/src/transfer-panel.js +21 -128
  605. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  606. package/lib/components/transfer/src/transfer-panel2.js +128 -21
  607. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  608. package/lib/components/transfer/src/transfer2.js +1 -1
  609. package/lib/components/tree/index.d.ts +2 -2
  610. package/lib/components/tree/src/model/useDragNode.js +2 -2
  611. package/lib/components/tree/src/model/useDragNode.js.map +1 -1
  612. package/lib/components/tree/src/tree.type.d.ts +1 -1
  613. package/lib/components/tree/src/tree.vue.d.ts +1 -1
  614. package/lib/components/tree-select/src/tree-select.js.map +1 -1
  615. package/lib/components/tree-select/src/tree.js +20 -3
  616. package/lib/components/tree-select/src/tree.js.map +1 -1
  617. package/lib/components/upload/index.js +1 -1
  618. package/lib/components/upload/src/upload-content.js +5 -1
  619. package/lib/components/upload/src/upload-content.js.map +1 -1
  620. package/lib/components/upload/src/upload-dragger.js +12 -72
  621. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  622. package/lib/components/upload/src/upload-dragger2.js +72 -12
  623. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  624. package/lib/components/visual-hidden/index.js +2 -2
  625. package/lib/components/visual-hidden/src/visual-hidden.js +7 -35
  626. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  627. package/lib/components/visual-hidden/src/visual-hidden2.js +35 -7
  628. package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
  629. package/lib/index.js +36 -36
  630. package/lib/locale/lang/fa.js +20 -20
  631. package/lib/locale/lang/fa.js.map +1 -1
  632. package/lib/utils/types.js +2 -2
  633. package/lib/utils/types.js.map +1 -1
  634. package/package.json +1 -1
  635. package/theme-chalk/el-carousel-item.css +1 -1
  636. package/theme-chalk/el-carousel.css +1 -1
  637. package/theme-chalk/index.css +1 -1
  638. package/theme-chalk/src/carousel-item.scss +8 -0
  639. package/theme-chalk/src/carousel.scss +9 -2
  640. package/theme-chalk/src/image.scss +6 -6
  641. package/theme-chalk/src/progress.scss +10 -1
  642. package/theme-chalk/src/text.scss +1 -1
  643. package/web-types.json +1 -1
@@ -2,20 +2,99 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
6
+ require('../../config-provider/index.js');
5
7
  require('../../../utils/index.js');
6
- var runtime = require('../../../utils/vue/props/runtime.js');
8
+ var constants = require('./constants.js');
9
+ var forwardRef = require('./forward-ref.js');
10
+ var trigger = require('./trigger.js');
11
+ var common = require('./common.js');
12
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
13
+ var event = require('../../../utils/dom/event.js');
14
+ var forEditor = require('../../config-provider/src/for-editor.js');
7
15
 
8
- const EventHandler = {
9
- type: runtime.definePropType(Function)
10
- };
11
- const tooltipV2TriggerProps = runtime.buildProps({
12
- onBlur: EventHandler,
13
- onClick: EventHandler,
14
- onFocus: EventHandler,
15
- onMouseDown: EventHandler,
16
- onMouseEnter: EventHandler,
17
- onMouseLeave: EventHandler
16
+ const __default__ = vue.defineComponent({
17
+ name: "ElTooltipV2Trigger"
18
18
  });
19
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
20
+ ...__default__,
21
+ props: {
22
+ ...common.tooltipV2CommonProps,
23
+ ...trigger.tooltipV2TriggerProps
24
+ },
25
+ setup(__props) {
26
+ const props = __props;
27
+ const { onClose, onOpen, onDelayOpen, triggerRef, contentId } = vue.inject(constants.tooltipV2RootKey);
28
+ let isMousedown = false;
29
+ const setTriggerRef = (el) => {
30
+ triggerRef.value = el;
31
+ };
32
+ const onMouseup = () => {
33
+ isMousedown = false;
34
+ };
35
+ const onMouseenter = event.composeEventHandlers(props.onMouseEnter, onDelayOpen);
36
+ const onMouseleave = event.composeEventHandlers(props.onMouseLeave, onClose);
37
+ const onMousedown = event.composeEventHandlers(props.onMouseDown, () => {
38
+ onClose();
39
+ isMousedown = true;
40
+ document.addEventListener("mouseup", onMouseup, { once: true });
41
+ });
42
+ const onFocus = event.composeEventHandlers(props.onFocus, () => {
43
+ if (!isMousedown)
44
+ onOpen();
45
+ });
46
+ const onBlur = event.composeEventHandlers(props.onBlur, onClose);
47
+ const onClick = event.composeEventHandlers(props.onClick, (e) => {
48
+ if (e.detail === 0)
49
+ onClose();
50
+ });
51
+ const events = {
52
+ blur: onBlur,
53
+ click: onClick,
54
+ focus: onFocus,
55
+ mousedown: onMousedown,
56
+ mouseenter: onMouseenter,
57
+ mouseleave: onMouseleave
58
+ };
59
+ const setEvents = (el, events2, type) => {
60
+ if (el) {
61
+ Object.entries(events2).forEach(([name, handler]) => {
62
+ el[type](name, handler);
63
+ });
64
+ }
65
+ };
66
+ forEditor.watch(triggerRef, (triggerEl, previousTriggerEl) => {
67
+ setEvents(triggerEl, events, "addEventListener");
68
+ setEvents(previousTriggerEl, events, "removeEventListener");
69
+ if (triggerEl) {
70
+ triggerEl.setAttribute("aria-describedby", contentId.value);
71
+ }
72
+ });
73
+ vue.onBeforeUnmount(() => {
74
+ setEvents(triggerRef.value, events, "removeEventListener");
75
+ document.removeEventListener("mouseup", onMouseup);
76
+ });
77
+ return (_ctx, _cache) => {
78
+ return _ctx.nowrap ? (vue.openBlock(), vue.createBlock(vue.unref(forwardRef["default"]), {
79
+ key: 0,
80
+ "set-ref": setTriggerRef,
81
+ "only-child": ""
82
+ }, {
83
+ default: vue.withCtx(() => [
84
+ vue.renderSlot(_ctx.$slots, "default")
85
+ ]),
86
+ _: 3
87
+ })) : (vue.openBlock(), vue.createElementBlock("button", vue.mergeProps({
88
+ key: 1,
89
+ ref_key: "triggerRef",
90
+ ref: triggerRef
91
+ }, _ctx.$attrs), [
92
+ vue.renderSlot(_ctx.$slots, "default")
93
+ ], 16));
94
+ };
95
+ }
96
+ });
97
+ var TooltipV2Trigger = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "D:\\workspace\\element-pe\\packages\\components\\tooltip-v2\\src\\trigger.vue"]]);
19
98
 
20
- exports.tooltipV2TriggerProps = tooltipV2TriggerProps;
99
+ exports["default"] = TooltipV2Trigger;
21
100
  //# sourceMappingURL=trigger2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trigger2.js","sources":["../../../../../../packages/components/tooltip-v2/src/trigger.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\n\nconst EventHandler = {\n type: definePropType<(e: Event) => boolean | void>(Function),\n} as const\n\nexport const tooltipV2TriggerProps = buildProps({\n onBlur: EventHandler,\n onClick: EventHandler,\n onFocus: EventHandler,\n onMouseDown: EventHandler,\n onMouseEnter: EventHandler,\n onMouseLeave: EventHandler,\n} as const)\n\nexport type TooltipV2TriggerProps = ExtractPropTypes<\n typeof tooltipV2TriggerProps\n>\n"],"names":["definePropType","buildProps"],"mappings":";;;;;;;AACA,MAAM,YAAY,GAAG;AACrB,EAAE,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAChC,CAAC,CAAC;AACU,MAAC,qBAAqB,GAAGC,kBAAU,CAAC;AAChD,EAAE,MAAM,EAAE,YAAY;AACtB,EAAE,OAAO,EAAE,YAAY;AACvB,EAAE,OAAO,EAAE,YAAY;AACvB,EAAE,WAAW,EAAE,YAAY;AAC3B,EAAE,YAAY,EAAE,YAAY;AAC5B,EAAE,YAAY,EAAE,YAAY;AAC5B,CAAC;;;;"}
1
+ {"version":3,"file":"trigger2.js","sources":["../../../../../../packages/components/tooltip-v2/src/trigger.vue"],"sourcesContent":["<template>\n <forward-ref v-if=\"nowrap\" :set-ref=\"setTriggerRef\" only-child>\n <slot />\n </forward-ref>\n <button v-else ref=\"triggerRef\" v-bind=\"$attrs\">\n <slot />\n </button>\n</template>\n\n<script setup lang=\"ts\">\nimport { inject, onBeforeUnmount } from 'vue'\nimport { watch } from '../../config-provider'\nimport { composeEventHandlers } from '@element-plus/utils'\nimport { tooltipV2RootKey } from './constants'\nimport ForwardRef from './forward-ref'\nimport { tooltipV2TriggerProps } from './trigger'\nimport { tooltipV2CommonProps } from './common'\n\ndefineOptions({\n name: 'ElTooltipV2Trigger',\n})\n\nconst props = defineProps({\n ...tooltipV2CommonProps,\n ...tooltipV2TriggerProps,\n})\n\n/**\n * onOpen opens the tooltip instantly, onTrigger acts a lil bit differently,\n * it will check if delayDuration is set to greater than 0 and based on that result,\n * if true, it opens the tooltip after delayDuration, otherwise it opens it instantly.\n */\nconst { onClose, onOpen, onDelayOpen, triggerRef, contentId } =\n inject(tooltipV2RootKey)!\n\nlet isMousedown = false\n\nconst setTriggerRef = (el: HTMLElement | null) => {\n triggerRef.value = el\n}\n\nconst onMouseup = () => {\n isMousedown = false\n}\n\nconst onMouseenter = composeEventHandlers(props.onMouseEnter, onDelayOpen)\n\nconst onMouseleave = composeEventHandlers(props.onMouseLeave, onClose)\n\nconst onMousedown = composeEventHandlers(props.onMouseDown, () => {\n onClose()\n isMousedown = true\n document.addEventListener('mouseup', onMouseup, { once: true })\n})\n\nconst onFocus = composeEventHandlers(props.onFocus, () => {\n if (!isMousedown) onOpen()\n})\n\nconst onBlur = composeEventHandlers(props.onBlur, onClose)\n\nconst onClick = composeEventHandlers(props.onClick, (e) => {\n if ((e as MouseEvent).detail === 0) onClose()\n})\n\nconst events = {\n blur: onBlur,\n click: onClick,\n focus: onFocus,\n mousedown: onMousedown,\n mouseenter: onMouseenter,\n mouseleave: onMouseleave,\n}\n\nconst setEvents = <T extends (e: Event) => void>(\n el: HTMLElement | null | undefined,\n events: Record<string, T>,\n type: 'addEventListener' | 'removeEventListener'\n) => {\n if (el) {\n Object.entries(events).forEach(([name, handler]) => {\n el[type](name, handler)\n })\n }\n}\n\nwatch(triggerRef, (triggerEl, previousTriggerEl) => {\n setEvents(triggerEl, events, 'addEventListener')\n setEvents(previousTriggerEl, events, 'removeEventListener')\n\n if (triggerEl) {\n triggerEl.setAttribute('aria-describedby', contentId.value)\n }\n})\n\nonBeforeUnmount(() => {\n setEvents(triggerRef.value, events, 'removeEventListener')\n document.removeEventListener('mouseup', onMouseup)\n})\n</script>\n"],"names":["inject","tooltipV2RootKey","composeEventHandlers","watch","onBeforeUnmount"],"mappings":"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"}
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var vue = require('vue');
6
6
  require('../../../config-provider/index.js');
7
7
  require('../../../../utils/index.js');
8
- var transferPanel = require('../transfer-panel2.js');
8
+ var transferPanel = require('../transfer-panel.js');
9
9
  var usePropsAlias = require('./use-props-alias.js');
10
10
  var shared = require('@vue/shared');
11
11
  var forEditor = require('../../../config-provider/src/for-editor.js');
@@ -2,136 +2,29 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
5
  require('../../../utils/index.js');
7
- require('../../../hooks/index.js');
8
- var index$2 = require('../../checkbox/index.js');
9
- var index$3 = require('../../input/index.js');
10
- var iconsVue = require('@element-plus/icons-vue');
11
- var transferPanel = require('./transfer-panel2.js');
12
- require('./composables/index.js');
13
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
14
- var index = require('../../../hooks/use-locale/index.js');
15
- var index$1 = require('../../../hooks/use-namespace/index.js');
16
- var usePropsAlias = require('./composables/use-props-alias.js');
17
- var useCheck = require('./composables/use-check.js');
18
- var types = require('../../../utils/types.js');
6
+ var transfer = require('./transfer.js');
7
+ var runtime = require('../../../utils/vue/props/runtime.js');
19
8
 
20
- const __default__ = vue.defineComponent({
21
- name: "ElTransferPanel"
9
+ const CHECKED_CHANGE_EVENT = "checked-change";
10
+ const transferPanelProps = runtime.buildProps({
11
+ data: transfer.transferProps.data,
12
+ optionRender: {
13
+ type: runtime.definePropType(Function)
14
+ },
15
+ placeholder: String,
16
+ title: String,
17
+ filterable: Boolean,
18
+ format: transfer.transferProps.format,
19
+ filterMethod: transfer.transferProps.filterMethod,
20
+ defaultChecked: transfer.transferProps.leftDefaultChecked,
21
+ props: transfer.transferProps.props
22
22
  });
23
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
24
- ...__default__,
25
- props: transferPanel.transferPanelProps,
26
- emits: transferPanel.transferPanelEmits,
27
- setup(__props, { expose, emit }) {
28
- const props = __props;
29
- const slots = vue.useSlots();
30
- const OptionContent = ({ option }) => option;
31
- const { t } = index.useLocale();
32
- const ns = index$1.useNamespace("transfer");
33
- const panelState = vue.reactive({
34
- checked: [],
35
- allChecked: false,
36
- query: "",
37
- checkChangeByUser: true
38
- });
39
- const propsAlias = usePropsAlias.usePropsAlias(props);
40
- const {
41
- filteredData,
42
- checkedSummary,
43
- isIndeterminate,
44
- handleAllCheckedChange
45
- } = useCheck.useCheck(props, panelState, emit);
46
- const hasNoMatch = vue.computed(() => !types.isEmpty(panelState.query) && types.isEmpty(filteredData.value));
47
- const hasFooter = vue.computed(() => !types.isEmpty(slots.default()[0].children));
48
- const { checked, allChecked, query } = vue.toRefs(panelState);
49
- expose({
50
- query
51
- });
52
- return (_ctx, _cache) => {
53
- return vue.openBlock(), vue.createElementBlock("div", {
54
- class: vue.normalizeClass(vue.unref(ns).b("panel"))
55
- }, [
56
- vue.createElementVNode("p", {
57
- class: vue.normalizeClass(vue.unref(ns).be("panel", "header"))
58
- }, [
59
- vue.createVNode(vue.unref(index$2.ElCheckbox), {
60
- modelValue: vue.unref(allChecked),
61
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.isRef(allChecked) ? allChecked.value = $event : null),
62
- indeterminate: vue.unref(isIndeterminate),
63
- "validate-event": false,
64
- onChange: vue.unref(handleAllCheckedChange)
65
- }, {
66
- default: vue.withCtx(() => [
67
- vue.createTextVNode(vue.toDisplayString(_ctx.title) + " ", 1),
68
- vue.createElementVNode("span", null, vue.toDisplayString(vue.unref(checkedSummary)), 1)
69
- ]),
70
- _: 1
71
- }, 8, ["modelValue", "indeterminate", "onChange"])
72
- ], 2),
73
- vue.createElementVNode("div", {
74
- class: vue.normalizeClass([vue.unref(ns).be("panel", "body"), vue.unref(ns).is("with-footer", vue.unref(hasFooter))])
75
- }, [
76
- _ctx.filterable ? (vue.openBlock(), vue.createBlock(vue.unref(index$3.ElInput), {
77
- key: 0,
78
- modelValue: vue.unref(query),
79
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => vue.isRef(query) ? query.value = $event : null),
80
- class: vue.normalizeClass(vue.unref(ns).be("panel", "filter")),
81
- size: "default",
82
- placeholder: _ctx.placeholder,
83
- "prefix-icon": vue.unref(iconsVue.Search),
84
- clearable: "",
85
- "validate-event": false
86
- }, null, 8, ["modelValue", "class", "placeholder", "prefix-icon"])) : vue.createCommentVNode("v-if", true),
87
- vue.withDirectives(vue.createVNode(vue.unref(index$2.ElCheckboxGroup), {
88
- modelValue: vue.unref(checked),
89
- "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => vue.isRef(checked) ? checked.value = $event : null),
90
- "validate-event": false,
91
- class: vue.normalizeClass([vue.unref(ns).is("filterable", _ctx.filterable), vue.unref(ns).be("panel", "list")])
92
- }, {
93
- default: vue.withCtx(() => [
94
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(filteredData), (item) => {
95
- return vue.openBlock(), vue.createBlock(vue.unref(index$2.ElCheckbox), {
96
- key: item[vue.unref(propsAlias).key],
97
- class: vue.normalizeClass(vue.unref(ns).be("panel", "item")),
98
- label: item[vue.unref(propsAlias).key],
99
- disabled: item[vue.unref(propsAlias).disabled],
100
- "validate-event": false
101
- }, {
102
- default: vue.withCtx(() => {
103
- var _a;
104
- return [
105
- vue.createVNode(OptionContent, {
106
- option: (_a = _ctx.optionRender) == null ? void 0 : _a.call(_ctx, item)
107
- }, null, 8, ["option"])
108
- ];
109
- }),
110
- _: 2
111
- }, 1032, ["class", "label", "disabled"]);
112
- }), 128))
113
- ]),
114
- _: 1
115
- }, 8, ["modelValue", "class"]), [
116
- [vue.vShow, !vue.unref(hasNoMatch) && !vue.unref(types.isEmpty)(_ctx.data)]
117
- ]),
118
- vue.withDirectives(vue.createElementVNode("p", {
119
- class: vue.normalizeClass(vue.unref(ns).be("panel", "empty"))
120
- }, vue.toDisplayString(vue.unref(hasNoMatch) ? vue.unref(t)("el.transfer.noMatch") : vue.unref(t)("el.transfer.noData")), 3), [
121
- [vue.vShow, vue.unref(hasNoMatch) || vue.unref(types.isEmpty)(_ctx.data)]
122
- ])
123
- ], 2),
124
- vue.unref(hasFooter) ? (vue.openBlock(), vue.createElementBlock("p", {
125
- key: 0,
126
- class: vue.normalizeClass(vue.unref(ns).be("panel", "footer"))
127
- }, [
128
- vue.renderSlot(_ctx.$slots, "default")
129
- ], 2)) : vue.createCommentVNode("v-if", true)
130
- ], 2);
131
- };
132
- }
133
- });
134
- var TransferPanel = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "D:\\workspace\\element-pe\\packages\\components\\transfer\\src\\transfer-panel.vue"]]);
23
+ const transferPanelEmits = {
24
+ [CHECKED_CHANGE_EVENT]: transfer.transferCheckedChangeFn
25
+ };
135
26
 
136
- exports["default"] = TransferPanel;
27
+ exports.CHECKED_CHANGE_EVENT = CHECKED_CHANGE_EVENT;
28
+ exports.transferPanelEmits = transferPanelEmits;
29
+ exports.transferPanelProps = transferPanelProps;
137
30
  //# sourceMappingURL=transfer-panel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transfer-panel.js","sources":["../../../../../../packages/components/transfer/src/transfer-panel.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b('panel')\">\n <p :class=\"ns.be('panel', 'header')\">\n <el-checkbox\n v-model=\"allChecked\"\n :indeterminate=\"isIndeterminate\"\n :validate-event=\"false\"\n @change=\"handleAllCheckedChange\"\n >\n {{ title }}\n <span>{{ checkedSummary }}</span>\n </el-checkbox>\n </p>\n\n <div :class=\"[ns.be('panel', 'body'), ns.is('with-footer', hasFooter)]\">\n <el-input\n v-if=\"filterable\"\n v-model=\"query\"\n :class=\"ns.be('panel', 'filter')\"\n size=\"default\"\n :placeholder=\"placeholder\"\n :prefix-icon=\"Search\"\n clearable\n :validate-event=\"false\"\n />\n <el-checkbox-group\n v-show=\"!hasNoMatch && !isEmpty(data)\"\n v-model=\"checked\"\n :validate-event=\"false\"\n :class=\"[ns.is('filterable', filterable), ns.be('panel', 'list')]\"\n >\n <el-checkbox\n v-for=\"item in filteredData\"\n :key=\"item[propsAlias.key]\"\n :class=\"ns.be('panel', 'item')\"\n :label=\"item[propsAlias.key]\"\n :disabled=\"item[propsAlias.disabled]\"\n :validate-event=\"false\"\n >\n <option-content :option=\"optionRender?.(item)\" />\n </el-checkbox>\n </el-checkbox-group>\n <p v-show=\"hasNoMatch || isEmpty(data)\" :class=\"ns.be('panel', 'empty')\">\n {{ hasNoMatch ? t('el.transfer.noMatch') : t('el.transfer.noData') }}\n </p>\n </div>\n <p v-if=\"hasFooter\" :class=\"ns.be('panel', 'footer')\">\n <slot />\n </p>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, reactive, toRefs, useSlots } from 'vue'\nimport { isEmpty } from '@element-plus/utils'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElCheckbox, ElCheckboxGroup } from '@element-plus/components/checkbox'\nimport { ElInput } from '@element-plus/components/input'\nimport { Search } from '@element-plus/icons-vue'\nimport { transferPanelEmits, transferPanelProps } from './transfer-panel'\nimport { useCheck, usePropsAlias } from './composables'\n\nimport type { VNode } from 'vue'\nimport type { TransferPanelState } from './transfer-panel'\n\ndefineOptions({\n name: 'ElTransferPanel',\n})\n\nconst props = defineProps(transferPanelProps)\nconst emit = defineEmits(transferPanelEmits)\nconst slots = useSlots()\n\nconst OptionContent = ({ option }: { option: VNode | VNode[] }) => option\n\nconst { t } = useLocale()\nconst ns = useNamespace('transfer')\n\nconst panelState = reactive<TransferPanelState>({\n checked: [],\n allChecked: false,\n query: '',\n checkChangeByUser: true,\n})\n\nconst propsAlias = usePropsAlias(props)\n\nconst {\n filteredData,\n checkedSummary,\n isIndeterminate,\n handleAllCheckedChange,\n} = useCheck(props, panelState, emit)\n\nconst hasNoMatch = computed(\n () => !isEmpty(panelState.query) && isEmpty(filteredData.value)\n)\n\nconst hasFooter = computed(() => !isEmpty(slots.default!()[0].children))\n\nconst { checked, allChecked, query } = toRefs(panelState)\n\ndefineExpose({\n /** @description filter keyword */\n query,\n})\n</script>\n"],"names":["useSlots","useLocale","useNamespace","reactive","usePropsAlias","useCheck","computed","isEmpty","toRefs"],"mappings":";;;;;;;;;;;;;;;;;;;uCAiEc,CAAA;AAAA,EACZ,IAAM,EAAA,iBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAIA,IAAA,MAAM,QAAQA,YAAS,EAAA,CAAA;AAEvB,IAAM,MAAA,aAAA,GAAgB,CAAC,EAAE,MAA0C,EAAA,KAAA,MAAA,CAAA;AAEnE,IAAM,MAAA,EAAE,MAAMC,eAAU,EAAA,CAAA;AACxB,IAAM,MAAA,EAAA,GAAKC,qBAAa,UAAU,CAAA,CAAA;AAElC,IAAA,MAAM,aAAaC,YAA6B,CAAA;AAAA,MAC9C,SAAS,EAAC;AAAA,MACV,UAAY,EAAA,KAAA;AAAA,MACZ,KAAO,EAAA,EAAA;AAAA,MACP,iBAAmB,EAAA,IAAA;AAAA,KACpB,CAAA,CAAA;AAED,IAAM,MAAA,UAAA,GAAaC,4BAAc,KAAK,CAAA,CAAA;AAEtC,IAAM,MAAA;AAAA,MACJ,YAAA;AAAA,MACA,cAAA;AAAA,MACA,eAAA;AAAA,MACA,sBAAA;AAAA,KACE,GAAAC,iBAAA,CAAS,KAAO,EAAA,UAAA,EAAY,IAAI,CAAA,CAAA;AAEpC,IAAM,MAAA,UAAA,GAAaC,YACjB,CAAA,MAAM,CAACC,aAAA,CAAQ,UAAW,CAAA,KAAK,CAAK,IAAAA,aAAA,CAAQ,YAAa,CAAA,KAAK,CAChE,CAAA,CAAA;AAEA,IAAM,MAAA,SAAA,GAAYD,YAAS,CAAA,MAAM,CAACC,aAAA,CAAQ,MAAM,OAAS,EAAA,CAAE,CAAG,CAAA,CAAA,QAAQ,CAAC,CAAA,CAAA;AAEvE,IAAA,MAAM,EAAE,OAAA,EAAS,UAAY,EAAA,KAAA,EAAA,GAAUC,WAAO,UAAU,CAAA,CAAA;AAExD,IAAa,MAAA,CAAA;AAAA,MAEX,KAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"transfer-panel.js","sources":["../../../../../../packages/components/transfer/src/transfer-panel.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\nimport { transferCheckedChangeFn, transferProps } from './transfer'\n\nimport type { ExtractPropTypes, VNode } from 'vue'\nimport type { TransferDataItem, TransferKey } from './transfer'\nimport type TransferPanel from './transfer-panel.vue'\n\nexport interface TransferPanelState {\n checked: TransferKey[]\n allChecked: boolean\n query: string\n checkChangeByUser: boolean\n}\n\nexport const CHECKED_CHANGE_EVENT = 'checked-change'\n\nexport const transferPanelProps = buildProps({\n data: transferProps.data,\n optionRender: {\n type: definePropType<(option: TransferDataItem) => VNode | VNode[]>(\n Function\n ),\n },\n placeholder: String,\n title: String,\n filterable: Boolean,\n format: transferProps.format,\n filterMethod: transferProps.filterMethod,\n defaultChecked: transferProps.leftDefaultChecked,\n props: transferProps.props,\n} as const)\nexport type TransferPanelProps = ExtractPropTypes<typeof transferPanelProps>\n\nexport const transferPanelEmits = {\n [CHECKED_CHANGE_EVENT]: transferCheckedChangeFn,\n}\nexport type TransferPanelEmits = typeof transferPanelEmits\n\nexport type TransferPanelInstance = InstanceType<typeof TransferPanel>\n"],"names":["buildProps","transferProps","definePropType","transferCheckedChangeFn"],"mappings":";;;;;;;;AAEY,MAAC,oBAAoB,GAAG,iBAAiB;AACzC,MAAC,kBAAkB,GAAGA,kBAAU,CAAC;AAC7C,EAAE,IAAI,EAAEC,sBAAa,CAAC,IAAI;AAC1B,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAEC,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,MAAM,EAAED,sBAAa,CAAC,MAAM;AAC9B,EAAE,YAAY,EAAEA,sBAAa,CAAC,YAAY;AAC1C,EAAE,cAAc,EAAEA,sBAAa,CAAC,kBAAkB;AAClD,EAAE,KAAK,EAAEA,sBAAa,CAAC,KAAK;AAC5B,CAAC,EAAE;AACS,MAAC,kBAAkB,GAAG;AAClC,EAAE,CAAC,oBAAoB,GAAGE,gCAAuB;AACjD;;;;;;"}
@@ -2,29 +2,136 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
5
6
  require('../../../utils/index.js');
6
- var transfer = require('./transfer.js');
7
- var runtime = require('../../../utils/vue/props/runtime.js');
7
+ require('../../../hooks/index.js');
8
+ var index$2 = require('../../checkbox/index.js');
9
+ var index$3 = require('../../input/index.js');
10
+ var iconsVue = require('@element-plus/icons-vue');
11
+ var transferPanel = require('./transfer-panel.js');
12
+ require('./composables/index.js');
13
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
14
+ var index = require('../../../hooks/use-locale/index.js');
15
+ var index$1 = require('../../../hooks/use-namespace/index.js');
16
+ var usePropsAlias = require('./composables/use-props-alias.js');
17
+ var useCheck = require('./composables/use-check.js');
18
+ var types = require('../../../utils/types.js');
8
19
 
9
- const CHECKED_CHANGE_EVENT = "checked-change";
10
- const transferPanelProps = runtime.buildProps({
11
- data: transfer.transferProps.data,
12
- optionRender: {
13
- type: runtime.definePropType(Function)
14
- },
15
- placeholder: String,
16
- title: String,
17
- filterable: Boolean,
18
- format: transfer.transferProps.format,
19
- filterMethod: transfer.transferProps.filterMethod,
20
- defaultChecked: transfer.transferProps.leftDefaultChecked,
21
- props: transfer.transferProps.props
20
+ const __default__ = vue.defineComponent({
21
+ name: "ElTransferPanel"
22
22
  });
23
- const transferPanelEmits = {
24
- [CHECKED_CHANGE_EVENT]: transfer.transferCheckedChangeFn
25
- };
23
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
24
+ ...__default__,
25
+ props: transferPanel.transferPanelProps,
26
+ emits: transferPanel.transferPanelEmits,
27
+ setup(__props, { expose, emit }) {
28
+ const props = __props;
29
+ const slots = vue.useSlots();
30
+ const OptionContent = ({ option }) => option;
31
+ const { t } = index.useLocale();
32
+ const ns = index$1.useNamespace("transfer");
33
+ const panelState = vue.reactive({
34
+ checked: [],
35
+ allChecked: false,
36
+ query: "",
37
+ checkChangeByUser: true
38
+ });
39
+ const propsAlias = usePropsAlias.usePropsAlias(props);
40
+ const {
41
+ filteredData,
42
+ checkedSummary,
43
+ isIndeterminate,
44
+ handleAllCheckedChange
45
+ } = useCheck.useCheck(props, panelState, emit);
46
+ const hasNoMatch = vue.computed(() => !types.isEmpty(panelState.query) && types.isEmpty(filteredData.value));
47
+ const hasFooter = vue.computed(() => !types.isEmpty(slots.default()[0].children));
48
+ const { checked, allChecked, query } = vue.toRefs(panelState);
49
+ expose({
50
+ query
51
+ });
52
+ return (_ctx, _cache) => {
53
+ return vue.openBlock(), vue.createElementBlock("div", {
54
+ class: vue.normalizeClass(vue.unref(ns).b("panel"))
55
+ }, [
56
+ vue.createElementVNode("p", {
57
+ class: vue.normalizeClass(vue.unref(ns).be("panel", "header"))
58
+ }, [
59
+ vue.createVNode(vue.unref(index$2.ElCheckbox), {
60
+ modelValue: vue.unref(allChecked),
61
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.isRef(allChecked) ? allChecked.value = $event : null),
62
+ indeterminate: vue.unref(isIndeterminate),
63
+ "validate-event": false,
64
+ onChange: vue.unref(handleAllCheckedChange)
65
+ }, {
66
+ default: vue.withCtx(() => [
67
+ vue.createTextVNode(vue.toDisplayString(_ctx.title) + " ", 1),
68
+ vue.createElementVNode("span", null, vue.toDisplayString(vue.unref(checkedSummary)), 1)
69
+ ]),
70
+ _: 1
71
+ }, 8, ["modelValue", "indeterminate", "onChange"])
72
+ ], 2),
73
+ vue.createElementVNode("div", {
74
+ class: vue.normalizeClass([vue.unref(ns).be("panel", "body"), vue.unref(ns).is("with-footer", vue.unref(hasFooter))])
75
+ }, [
76
+ _ctx.filterable ? (vue.openBlock(), vue.createBlock(vue.unref(index$3.ElInput), {
77
+ key: 0,
78
+ modelValue: vue.unref(query),
79
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => vue.isRef(query) ? query.value = $event : null),
80
+ class: vue.normalizeClass(vue.unref(ns).be("panel", "filter")),
81
+ size: "default",
82
+ placeholder: _ctx.placeholder,
83
+ "prefix-icon": vue.unref(iconsVue.Search),
84
+ clearable: "",
85
+ "validate-event": false
86
+ }, null, 8, ["modelValue", "class", "placeholder", "prefix-icon"])) : vue.createCommentVNode("v-if", true),
87
+ vue.withDirectives(vue.createVNode(vue.unref(index$2.ElCheckboxGroup), {
88
+ modelValue: vue.unref(checked),
89
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => vue.isRef(checked) ? checked.value = $event : null),
90
+ "validate-event": false,
91
+ class: vue.normalizeClass([vue.unref(ns).is("filterable", _ctx.filterable), vue.unref(ns).be("panel", "list")])
92
+ }, {
93
+ default: vue.withCtx(() => [
94
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(filteredData), (item) => {
95
+ return vue.openBlock(), vue.createBlock(vue.unref(index$2.ElCheckbox), {
96
+ key: item[vue.unref(propsAlias).key],
97
+ class: vue.normalizeClass(vue.unref(ns).be("panel", "item")),
98
+ label: item[vue.unref(propsAlias).key],
99
+ disabled: item[vue.unref(propsAlias).disabled],
100
+ "validate-event": false
101
+ }, {
102
+ default: vue.withCtx(() => {
103
+ var _a;
104
+ return [
105
+ vue.createVNode(OptionContent, {
106
+ option: (_a = _ctx.optionRender) == null ? void 0 : _a.call(_ctx, item)
107
+ }, null, 8, ["option"])
108
+ ];
109
+ }),
110
+ _: 2
111
+ }, 1032, ["class", "label", "disabled"]);
112
+ }), 128))
113
+ ]),
114
+ _: 1
115
+ }, 8, ["modelValue", "class"]), [
116
+ [vue.vShow, !vue.unref(hasNoMatch) && !vue.unref(types.isEmpty)(_ctx.data)]
117
+ ]),
118
+ vue.withDirectives(vue.createElementVNode("p", {
119
+ class: vue.normalizeClass(vue.unref(ns).be("panel", "empty"))
120
+ }, vue.toDisplayString(vue.unref(hasNoMatch) ? vue.unref(t)("el.transfer.noMatch") : vue.unref(t)("el.transfer.noData")), 3), [
121
+ [vue.vShow, vue.unref(hasNoMatch) || vue.unref(types.isEmpty)(_ctx.data)]
122
+ ])
123
+ ], 2),
124
+ vue.unref(hasFooter) ? (vue.openBlock(), vue.createElementBlock("p", {
125
+ key: 0,
126
+ class: vue.normalizeClass(vue.unref(ns).be("panel", "footer"))
127
+ }, [
128
+ vue.renderSlot(_ctx.$slots, "default")
129
+ ], 2)) : vue.createCommentVNode("v-if", true)
130
+ ], 2);
131
+ };
132
+ }
133
+ });
134
+ var TransferPanel = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "D:\\workspace\\element-pe\\packages\\components\\transfer\\src\\transfer-panel.vue"]]);
26
135
 
27
- exports.CHECKED_CHANGE_EVENT = CHECKED_CHANGE_EVENT;
28
- exports.transferPanelEmits = transferPanelEmits;
29
- exports.transferPanelProps = transferPanelProps;
136
+ exports["default"] = TransferPanel;
30
137
  //# sourceMappingURL=transfer-panel2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transfer-panel2.js","sources":["../../../../../../packages/components/transfer/src/transfer-panel.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\nimport { transferCheckedChangeFn, transferProps } from './transfer'\n\nimport type { ExtractPropTypes, VNode } from 'vue'\nimport type { TransferDataItem, TransferKey } from './transfer'\nimport type TransferPanel from './transfer-panel.vue'\n\nexport interface TransferPanelState {\n checked: TransferKey[]\n allChecked: boolean\n query: string\n checkChangeByUser: boolean\n}\n\nexport const CHECKED_CHANGE_EVENT = 'checked-change'\n\nexport const transferPanelProps = buildProps({\n data: transferProps.data,\n optionRender: {\n type: definePropType<(option: TransferDataItem) => VNode | VNode[]>(\n Function\n ),\n },\n placeholder: String,\n title: String,\n filterable: Boolean,\n format: transferProps.format,\n filterMethod: transferProps.filterMethod,\n defaultChecked: transferProps.leftDefaultChecked,\n props: transferProps.props,\n} as const)\nexport type TransferPanelProps = ExtractPropTypes<typeof transferPanelProps>\n\nexport const transferPanelEmits = {\n [CHECKED_CHANGE_EVENT]: transferCheckedChangeFn,\n}\nexport type TransferPanelEmits = typeof transferPanelEmits\n\nexport type TransferPanelInstance = InstanceType<typeof TransferPanel>\n"],"names":["buildProps","transferProps","definePropType","transferCheckedChangeFn"],"mappings":";;;;;;;;AAEY,MAAC,oBAAoB,GAAG,iBAAiB;AACzC,MAAC,kBAAkB,GAAGA,kBAAU,CAAC;AAC7C,EAAE,IAAI,EAAEC,sBAAa,CAAC,IAAI;AAC1B,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAEC,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,MAAM,EAAED,sBAAa,CAAC,MAAM;AAC9B,EAAE,YAAY,EAAEA,sBAAa,CAAC,YAAY;AAC1C,EAAE,cAAc,EAAEA,sBAAa,CAAC,kBAAkB;AAClD,EAAE,KAAK,EAAEA,sBAAa,CAAC,KAAK;AAC5B,CAAC,EAAE;AACS,MAAC,kBAAkB,GAAG;AAClC,EAAE,CAAC,oBAAoB,GAAGE,gCAAuB;AACjD;;;;;;"}
1
+ {"version":3,"file":"transfer-panel2.js","sources":["../../../../../../packages/components/transfer/src/transfer-panel.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b('panel')\">\n <p :class=\"ns.be('panel', 'header')\">\n <el-checkbox\n v-model=\"allChecked\"\n :indeterminate=\"isIndeterminate\"\n :validate-event=\"false\"\n @change=\"handleAllCheckedChange\"\n >\n {{ title }}\n <span>{{ checkedSummary }}</span>\n </el-checkbox>\n </p>\n\n <div :class=\"[ns.be('panel', 'body'), ns.is('with-footer', hasFooter)]\">\n <el-input\n v-if=\"filterable\"\n v-model=\"query\"\n :class=\"ns.be('panel', 'filter')\"\n size=\"default\"\n :placeholder=\"placeholder\"\n :prefix-icon=\"Search\"\n clearable\n :validate-event=\"false\"\n />\n <el-checkbox-group\n v-show=\"!hasNoMatch && !isEmpty(data)\"\n v-model=\"checked\"\n :validate-event=\"false\"\n :class=\"[ns.is('filterable', filterable), ns.be('panel', 'list')]\"\n >\n <el-checkbox\n v-for=\"item in filteredData\"\n :key=\"item[propsAlias.key]\"\n :class=\"ns.be('panel', 'item')\"\n :label=\"item[propsAlias.key]\"\n :disabled=\"item[propsAlias.disabled]\"\n :validate-event=\"false\"\n >\n <option-content :option=\"optionRender?.(item)\" />\n </el-checkbox>\n </el-checkbox-group>\n <p v-show=\"hasNoMatch || isEmpty(data)\" :class=\"ns.be('panel', 'empty')\">\n {{ hasNoMatch ? t('el.transfer.noMatch') : t('el.transfer.noData') }}\n </p>\n </div>\n <p v-if=\"hasFooter\" :class=\"ns.be('panel', 'footer')\">\n <slot />\n </p>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, reactive, toRefs, useSlots } from 'vue'\nimport { isEmpty } from '@element-plus/utils'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElCheckbox, ElCheckboxGroup } from '@element-plus/components/checkbox'\nimport { ElInput } from '@element-plus/components/input'\nimport { Search } from '@element-plus/icons-vue'\nimport { transferPanelEmits, transferPanelProps } from './transfer-panel'\nimport { useCheck, usePropsAlias } from './composables'\n\nimport type { VNode } from 'vue'\nimport type { TransferPanelState } from './transfer-panel'\n\ndefineOptions({\n name: 'ElTransferPanel',\n})\n\nconst props = defineProps(transferPanelProps)\nconst emit = defineEmits(transferPanelEmits)\nconst slots = useSlots()\n\nconst OptionContent = ({ option }: { option: VNode | VNode[] }) => option\n\nconst { t } = useLocale()\nconst ns = useNamespace('transfer')\n\nconst panelState = reactive<TransferPanelState>({\n checked: [],\n allChecked: false,\n query: '',\n checkChangeByUser: true,\n})\n\nconst propsAlias = usePropsAlias(props)\n\nconst {\n filteredData,\n checkedSummary,\n isIndeterminate,\n handleAllCheckedChange,\n} = useCheck(props, panelState, emit)\n\nconst hasNoMatch = computed(\n () => !isEmpty(panelState.query) && isEmpty(filteredData.value)\n)\n\nconst hasFooter = computed(() => !isEmpty(slots.default!()[0].children))\n\nconst { checked, allChecked, query } = toRefs(panelState)\n\ndefineExpose({\n /** @description filter keyword */\n query,\n})\n</script>\n"],"names":["useSlots","useLocale","useNamespace","reactive","usePropsAlias","useCheck","computed","isEmpty","toRefs"],"mappings":";;;;;;;;;;;;;;;;;;;uCAiEc,CAAA;AAAA,EACZ,IAAM,EAAA,iBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAIA,IAAA,MAAM,QAAQA,YAAS,EAAA,CAAA;AAEvB,IAAM,MAAA,aAAA,GAAgB,CAAC,EAAE,MAA0C,EAAA,KAAA,MAAA,CAAA;AAEnE,IAAM,MAAA,EAAE,MAAMC,eAAU,EAAA,CAAA;AACxB,IAAM,MAAA,EAAA,GAAKC,qBAAa,UAAU,CAAA,CAAA;AAElC,IAAA,MAAM,aAAaC,YAA6B,CAAA;AAAA,MAC9C,SAAS,EAAC;AAAA,MACV,UAAY,EAAA,KAAA;AAAA,MACZ,KAAO,EAAA,EAAA;AAAA,MACP,iBAAmB,EAAA,IAAA;AAAA,KACpB,CAAA,CAAA;AAED,IAAM,MAAA,UAAA,GAAaC,4BAAc,KAAK,CAAA,CAAA;AAEtC,IAAM,MAAA;AAAA,MACJ,YAAA;AAAA,MACA,cAAA;AAAA,MACA,eAAA;AAAA,MACA,sBAAA;AAAA,KACE,GAAAC,iBAAA,CAAS,KAAO,EAAA,UAAA,EAAY,IAAI,CAAA,CAAA;AAEpC,IAAM,MAAA,UAAA,GAAaC,YACjB,CAAA,MAAM,CAACC,aAAA,CAAQ,UAAW,CAAA,KAAK,CAAK,IAAAA,aAAA,CAAQ,YAAa,CAAA,KAAK,CAChE,CAAA,CAAA;AAEA,IAAM,MAAA,SAAA,GAAYD,YAAS,CAAA,MAAM,CAACC,aAAA,CAAQ,MAAM,OAAS,EAAA,CAAE,CAAG,CAAA,CAAA,QAAQ,CAAC,CAAA,CAAA;AAEvE,IAAA,MAAM,EAAE,OAAA,EAAS,UAAY,EAAA,KAAA,EAAA,GAAUC,WAAO,UAAU,CAAA,CAAA;AAExD,IAAa,MAAA,CAAA;AAAA,MAEX,KAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -12,7 +12,7 @@ require('../../form/index.js');
12
12
  var iconsVue = require('@element-plus/icons-vue');
13
13
  var transfer = require('./transfer.js');
14
14
  require('./composables/index.js');
15
- var transferPanel = require('./transfer-panel.js');
15
+ var transferPanel = require('./transfer-panel2.js');
16
16
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
17
17
  var index = require('../../../hooks/use-locale/index.js');
18
18
  var index$1 = require('../../../hooks/use-namespace/index.js');
@@ -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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"}