element-pe 2.2.69 → 2.2.71

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (616) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +26 -16
  3. package/dist/index.full.min.js +4 -4
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +13 -13
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +26 -16
  8. package/es/components/affix/index.mjs +2 -2
  9. package/es/components/affix/src/affix.mjs +26 -119
  10. package/es/components/affix/src/affix.mjs.map +1 -1
  11. package/es/components/affix/src/affix2.mjs +119 -26
  12. package/es/components/affix/src/affix2.mjs.map +1 -1
  13. package/es/components/alert/index.mjs +2 -2
  14. package/es/components/alert/src/alert.mjs +38 -103
  15. package/es/components/alert/src/alert.mjs.map +1 -1
  16. package/es/components/alert/src/alert2.mjs +103 -38
  17. package/es/components/alert/src/alert2.mjs.map +1 -1
  18. package/es/components/autocomplete/index.mjs +2 -2
  19. package/es/components/autocomplete/src/autocomplete.mjs +379 -99
  20. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  21. package/es/components/autocomplete/src/autocomplete2.mjs +99 -379
  22. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  23. package/es/components/backtop/index.mjs +2 -2
  24. package/es/components/backtop/src/backtop.mjs +23 -61
  25. package/es/components/backtop/src/backtop.mjs.map +1 -1
  26. package/es/components/backtop/src/backtop2.mjs +61 -23
  27. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  28. package/es/components/badge/index.mjs +2 -2
  29. package/es/components/badge/src/badge.mjs +17 -59
  30. package/es/components/badge/src/badge.mjs.map +1 -1
  31. package/es/components/badge/src/badge2.mjs +59 -17
  32. package/es/components/badge/src/badge2.mjs.map +1 -1
  33. package/es/components/button/index.mjs +2 -2
  34. package/es/components/button/src/button-group.mjs +1 -1
  35. package/es/components/button/src/button.mjs +76 -57
  36. package/es/components/button/src/button.mjs.map +1 -1
  37. package/es/components/button/src/button2.mjs +57 -76
  38. package/es/components/button/src/button2.mjs.map +1 -1
  39. package/es/components/calendar/index.mjs +2 -2
  40. package/es/components/calendar/src/calendar.mjs +18 -131
  41. package/es/components/calendar/src/calendar.mjs.map +1 -1
  42. package/es/components/calendar/src/calendar2.mjs +131 -18
  43. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  44. package/es/components/card/index.mjs +2 -2
  45. package/es/components/card/src/card.mjs +16 -35
  46. package/es/components/card/src/card.mjs.map +1 -1
  47. package/es/components/card/src/card2.mjs +35 -16
  48. package/es/components/card/src/card2.mjs.map +1 -1
  49. package/es/components/carousel/index.mjs +2 -2
  50. package/es/components/carousel/src/carousel-item.mjs +8 -69
  51. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  52. package/es/components/carousel/src/carousel-item2.mjs +69 -8
  53. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  54. package/es/components/cascader/src/cascader2.mjs +2 -2
  55. package/es/components/check-tag/index.mjs +2 -2
  56. package/es/components/check-tag/src/check-tag.mjs +31 -12
  57. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  58. package/es/components/check-tag/src/check-tag2.mjs +12 -31
  59. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  60. package/es/components/color-picker/index.mjs +2 -2
  61. package/es/components/color-picker/src/color-picker.mjs +335 -51
  62. package/es/components/color-picker/src/color-picker.mjs.map +1 -1
  63. package/es/components/color-picker/src/color-picker2.mjs +51 -335
  64. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  65. package/es/components/color-picker/src/components/predefine.mjs +1 -1
  66. package/es/components/countdown/index.mjs +2 -2
  67. package/es/components/countdown/src/countdown.mjs +23 -76
  68. package/es/components/countdown/src/countdown.mjs.map +1 -1
  69. package/es/components/countdown/src/countdown2.mjs +76 -23
  70. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  71. package/es/components/descriptions/index.mjs +2 -2
  72. package/es/components/descriptions/src/description.mjs +27 -120
  73. package/es/components/descriptions/src/description.mjs.map +1 -1
  74. package/es/components/descriptions/src/description2.mjs +120 -27
  75. package/es/components/descriptions/src/description2.mjs.map +1 -1
  76. package/es/components/descriptions/src/descriptions-row.mjs +7 -64
  77. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  78. package/es/components/descriptions/src/descriptions-row2.mjs +64 -7
  79. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  80. package/es/components/dialog/src/dialog-content.mjs +39 -94
  81. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  82. package/es/components/dialog/src/dialog-content2.mjs +94 -39
  83. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  84. package/es/components/dialog/src/dialog.mjs +1 -1
  85. package/es/components/dialog/src/dialog2.mjs +1 -1
  86. package/es/components/drawer/index.mjs +2 -2
  87. package/es/components/drawer/src/drawer.mjs +186 -25
  88. package/es/components/drawer/src/drawer.mjs.map +1 -1
  89. package/es/components/drawer/src/drawer2.mjs +25 -186
  90. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  91. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  92. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  93. package/es/components/dropdown/src/dropdown.mjs +2 -2
  94. package/es/components/dropdown/src/dropdown2.mjs +1 -1
  95. package/es/components/empty/index.mjs +2 -2
  96. package/es/components/empty/src/empty.mjs +55 -11
  97. package/es/components/empty/src/empty.mjs.map +1 -1
  98. package/es/components/empty/src/empty2.mjs +11 -55
  99. package/es/components/empty/src/empty2.mjs.map +1 -1
  100. package/es/components/form/index.mjs +4 -4
  101. package/es/components/form/src/form-item.mjs +46 -328
  102. package/es/components/form/src/form-item.mjs.map +1 -1
  103. package/es/components/form/src/form-item2.mjs +328 -46
  104. package/es/components/form/src/form-item2.mjs.map +1 -1
  105. package/es/components/form/src/form.mjs +150 -61
  106. package/es/components/form/src/form.mjs.map +1 -1
  107. package/es/components/form/src/form2.mjs +61 -150
  108. package/es/components/form/src/form2.mjs.map +1 -1
  109. package/es/components/icon/index.mjs +2 -2
  110. package/es/components/icon/src/icon.mjs +8 -36
  111. package/es/components/icon/src/icon.mjs.map +1 -1
  112. package/es/components/icon/src/icon2.mjs +36 -8
  113. package/es/components/icon/src/icon2.mjs.map +1 -1
  114. package/es/components/image/index.mjs +2 -2
  115. package/es/components/image/src/image.mjs +65 -226
  116. package/es/components/image/src/image.mjs.map +1 -1
  117. package/es/components/image/src/image2.mjs +226 -65
  118. package/es/components/image/src/image2.mjs.map +1 -1
  119. package/es/components/image-viewer/index.mjs +2 -2
  120. package/es/components/image-viewer/src/image-viewer.mjs +38 -401
  121. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  122. package/es/components/image-viewer/src/image-viewer2.mjs +401 -38
  123. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  124. package/es/components/index.mjs +45 -45
  125. package/es/components/input-number/index.mjs +2 -2
  126. package/es/components/input-number/src/input-number.mjs +335 -69
  127. package/es/components/input-number/src/input-number.mjs.map +1 -1
  128. package/es/components/input-number/src/input-number2.mjs +69 -335
  129. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  130. package/es/components/page-header/index.mjs +2 -2
  131. package/es/components/page-header/src/page-header.mjs +103 -17
  132. package/es/components/page-header/src/page-header.mjs.map +1 -1
  133. package/es/components/page-header/src/page-header2.mjs +17 -103
  134. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  135. package/es/components/pagination/src/components/jumper.mjs +60 -9
  136. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  137. package/es/components/pagination/src/components/jumper2.mjs +9 -60
  138. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  139. package/es/components/pagination/src/components/pager.mjs +17 -218
  140. package/es/components/pagination/src/components/pager.mjs.map +1 -1
  141. package/es/components/pagination/src/components/pager2.mjs +218 -17
  142. package/es/components/pagination/src/components/pager2.mjs.map +1 -1
  143. package/es/components/pagination/src/components/prev.mjs +38 -18
  144. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  145. package/es/components/pagination/src/components/prev2.mjs +18 -38
  146. package/es/components/pagination/src/components/prev2.mjs.map +1 -1
  147. package/es/components/pagination/src/components/total.mjs +28 -7
  148. package/es/components/pagination/src/components/total.mjs.map +1 -1
  149. package/es/components/pagination/src/components/total2.mjs +7 -28
  150. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  151. package/es/components/pagination/src/pagination.mjs +4 -4
  152. package/es/components/popconfirm/src/popconfirm.mjs +2 -2
  153. package/es/components/popover/index.mjs +2 -2
  154. package/es/components/popover/src/popover.mjs +66 -111
  155. package/es/components/popover/src/popover.mjs.map +1 -1
  156. package/es/components/popover/src/popover2.mjs +111 -66
  157. package/es/components/popover/src/popover2.mjs.map +1 -1
  158. package/es/components/popper/index.mjs +6 -6
  159. package/es/components/popper/src/content.mjs +139 -94
  160. package/es/components/popper/src/content.mjs.map +1 -1
  161. package/es/components/popper/src/content2.mjs +94 -139
  162. package/es/components/popper/src/content2.mjs.map +1 -1
  163. package/es/components/popper/src/popper.mjs +32 -25
  164. package/es/components/popper/src/popper.mjs.map +1 -1
  165. package/es/components/popper/src/popper2.mjs +25 -32
  166. package/es/components/popper/src/popper2.mjs.map +1 -1
  167. package/es/components/popper/src/trigger.mjs +31 -121
  168. package/es/components/popper/src/trigger.mjs.map +1 -1
  169. package/es/components/popper/src/trigger2.mjs +121 -31
  170. package/es/components/popper/src/trigger2.mjs.map +1 -1
  171. package/es/components/progress/index.mjs +2 -2
  172. package/es/components/progress/src/progress.mjs +59 -204
  173. package/es/components/progress/src/progress.mjs.map +1 -1
  174. package/es/components/progress/src/progress2.mjs +204 -59
  175. package/es/components/progress/src/progress2.mjs.map +1 -1
  176. package/es/components/radio/index.mjs +4 -4
  177. package/es/components/radio/src/radio-button.mjs +1 -1
  178. package/es/components/radio/src/radio-group.mjs +70 -42
  179. package/es/components/radio/src/radio-group.mjs.map +1 -1
  180. package/es/components/radio/src/radio-group2.mjs +42 -70
  181. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  182. package/es/components/radio/src/radio.mjs +35 -74
  183. package/es/components/radio/src/radio.mjs.map +1 -1
  184. package/es/components/radio/src/radio2.mjs +74 -35
  185. package/es/components/radio/src/radio2.mjs.map +1 -1
  186. package/es/components/resizable-columns/index.mjs +2 -2
  187. package/es/components/resizable-columns/src/resizable-columns.mjs +12 -237
  188. package/es/components/resizable-columns/src/resizable-columns.mjs.map +1 -1
  189. package/es/components/resizable-columns/src/resizable-columns2.mjs +237 -12
  190. package/es/components/resizable-columns/src/resizable-columns2.mjs.map +1 -1
  191. package/es/components/result/index.mjs +2 -2
  192. package/es/components/result/src/result.mjs +29 -63
  193. package/es/components/result/src/result.mjs.map +1 -1
  194. package/es/components/result/src/result2.mjs +63 -29
  195. package/es/components/result/src/result2.mjs.map +1 -1
  196. package/es/components/roving-focus-group/index.mjs +3 -3
  197. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs +1 -1
  198. package/es/components/roving-focus-group/src/roving-focus-group.mjs +29 -27
  199. package/es/components/roving-focus-group/src/roving-focus-group.mjs.map +1 -1
  200. package/es/components/roving-focus-group/src/roving-focus-group2.mjs +27 -29
  201. package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -1
  202. package/es/components/roving-focus-group/src/roving-focus-item.mjs +1 -1
  203. package/es/components/row/index.mjs +2 -2
  204. package/es/components/row/src/row.mjs +30 -45
  205. package/es/components/row/src/row.mjs.map +1 -1
  206. package/es/components/row/src/row2.mjs +45 -30
  207. package/es/components/row/src/row2.mjs.map +1 -1
  208. package/es/components/select/src/select.mjs +2 -2
  209. package/es/components/select-v2/index.d.ts +18 -0
  210. package/es/components/select-v2/src/defaults.d.ts +5 -0
  211. package/es/components/select-v2/src/defaults.mjs +7 -2
  212. package/es/components/select-v2/src/defaults.mjs.map +1 -1
  213. package/es/components/select-v2/src/group-item.mjs +3 -2
  214. package/es/components/select-v2/src/group-item.mjs.map +1 -1
  215. package/es/components/select-v2/src/group-item.vue.d.ts +2 -0
  216. package/es/components/select-v2/src/option-item.mjs +1 -1
  217. package/es/components/select-v2/src/option-item.mjs.map +1 -1
  218. package/es/components/select-v2/src/option-item.vue.d.ts +2 -0
  219. package/es/components/select-v2/src/select-dropdown.d.ts +2 -0
  220. package/es/components/select-v2/src/select-dropdown.mjs +6 -3
  221. package/es/components/select-v2/src/select-dropdown.mjs.map +1 -1
  222. package/es/components/select-v2/src/select.mjs +3 -2
  223. package/es/components/select-v2/src/select.mjs.map +1 -1
  224. package/es/components/select-v2/src/select.vue.d.ts +9 -0
  225. package/es/components/select-v2/src/useAllowCreate.mjs +3 -3
  226. package/es/components/select-v2/src/useAllowCreate.mjs.map +1 -1
  227. package/es/components/select-v2/src/useSelect.mjs +4 -4
  228. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  229. package/es/components/slider/src/button.mjs +94 -21
  230. package/es/components/slider/src/button.mjs.map +1 -1
  231. package/es/components/slider/src/button2.mjs +21 -94
  232. package/es/components/slider/src/button2.mjs.map +1 -1
  233. package/es/components/slider/src/slider2.mjs +1 -1
  234. package/es/components/statistic/index.mjs +2 -2
  235. package/es/components/statistic/src/statistic.mjs +25 -70
  236. package/es/components/statistic/src/statistic.mjs.map +1 -1
  237. package/es/components/statistic/src/statistic2.mjs +70 -25
  238. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  239. package/es/components/switch/index.mjs +2 -2
  240. package/es/components/switch/src/switch.mjs +93 -245
  241. package/es/components/switch/src/switch.mjs.map +1 -1
  242. package/es/components/switch/src/switch2.mjs +245 -93
  243. package/es/components/switch/src/switch2.mjs.map +1 -1
  244. package/es/components/tabs/index.mjs +3 -3
  245. package/es/components/tabs/src/tab-bar.mjs +75 -7
  246. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  247. package/es/components/tabs/src/tab-bar2.mjs +7 -75
  248. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  249. package/es/components/tabs/src/tab-nav.mjs +1 -1
  250. package/es/components/tabs/src/tab-pane.mjs +76 -14
  251. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  252. package/es/components/tabs/src/tab-pane2.mjs +14 -76
  253. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  254. package/es/components/tag/index.mjs +2 -2
  255. package/es/components/tag/src/tag.mjs +33 -98
  256. package/es/components/tag/src/tag.mjs.map +1 -1
  257. package/es/components/tag/src/tag2.mjs +98 -33
  258. package/es/components/tag/src/tag2.mjs.map +1 -1
  259. package/es/components/teleport/index.mjs +2 -2
  260. package/es/components/teleport/src/teleport.mjs +18 -44
  261. package/es/components/teleport/src/teleport.mjs.map +1 -1
  262. package/es/components/teleport/src/teleport2.mjs +44 -18
  263. package/es/components/teleport/src/teleport2.mjs.map +1 -1
  264. package/es/components/text/index.mjs +2 -2
  265. package/es/components/text/src/text.mjs +35 -22
  266. package/es/components/text/src/text.mjs.map +1 -1
  267. package/es/components/text/src/text2.mjs +22 -35
  268. package/es/components/text/src/text2.mjs.map +1 -1
  269. package/es/components/tooltip/index.mjs +2 -2
  270. package/es/components/tooltip/src/content.mjs +179 -31
  271. package/es/components/tooltip/src/content.mjs.map +1 -1
  272. package/es/components/tooltip/src/content2.mjs +31 -179
  273. package/es/components/tooltip/src/content2.mjs.map +1 -1
  274. package/es/components/tooltip/src/tooltip.mjs +3 -3
  275. package/es/components/tooltip/src/tooltip2.mjs +2 -2
  276. package/es/components/tooltip/src/trigger.mjs +73 -16
  277. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  278. package/es/components/tooltip/src/trigger2.mjs +16 -73
  279. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  280. package/es/components/tooltip-v2/index.mjs +1 -1
  281. package/es/components/tooltip-v2/src/tooltip.mjs +1 -1
  282. package/es/components/tooltip-v2/src/tooltip2.mjs +2 -2
  283. package/es/components/tooltip-v2/src/trigger.mjs +12 -91
  284. package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
  285. package/es/components/tooltip-v2/src/trigger2.mjs +91 -12
  286. package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
  287. package/es/components/transfer/index.mjs +2 -2
  288. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  289. package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
  290. package/es/components/transfer/src/transfer-panel.mjs +19 -128
  291. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  292. package/es/components/transfer/src/transfer-panel2.mjs +128 -19
  293. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  294. package/es/components/transfer/src/transfer.mjs +162 -69
  295. package/es/components/transfer/src/transfer.mjs.map +1 -1
  296. package/es/components/transfer/src/transfer2.mjs +69 -162
  297. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  298. package/es/components/upload/index.mjs +2 -2
  299. package/es/components/upload/src/upload-content.mjs +33 -182
  300. package/es/components/upload/src/upload-content.mjs.map +1 -1
  301. package/es/components/upload/src/upload-content2.mjs +182 -33
  302. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  303. package/es/components/upload/src/upload-list.mjs +26 -177
  304. package/es/components/upload/src/upload-list.mjs.map +1 -1
  305. package/es/components/upload/src/upload-list2.mjs +177 -26
  306. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  307. package/es/components/upload/src/upload2.mjs +2 -2
  308. package/es/index.mjs +45 -45
  309. package/lib/components/affix/index.js +2 -2
  310. package/lib/components/affix/src/affix.js +27 -119
  311. package/lib/components/affix/src/affix.js.map +1 -1
  312. package/lib/components/affix/src/affix2.js +119 -27
  313. package/lib/components/affix/src/affix2.js.map +1 -1
  314. package/lib/components/alert/index.js +2 -2
  315. package/lib/components/alert/src/alert.js +39 -102
  316. package/lib/components/alert/src/alert.js.map +1 -1
  317. package/lib/components/alert/src/alert2.js +102 -39
  318. package/lib/components/alert/src/alert2.js.map +1 -1
  319. package/lib/components/autocomplete/index.js +2 -2
  320. package/lib/components/autocomplete/src/autocomplete.js +378 -99
  321. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  322. package/lib/components/autocomplete/src/autocomplete2.js +99 -378
  323. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  324. package/lib/components/backtop/index.js +2 -2
  325. package/lib/components/backtop/src/backtop.js +24 -61
  326. package/lib/components/backtop/src/backtop.js.map +1 -1
  327. package/lib/components/backtop/src/backtop2.js +61 -24
  328. package/lib/components/backtop/src/backtop2.js.map +1 -1
  329. package/lib/components/badge/index.js +2 -2
  330. package/lib/components/badge/src/badge.js +17 -59
  331. package/lib/components/badge/src/badge.js.map +1 -1
  332. package/lib/components/badge/src/badge2.js +59 -17
  333. package/lib/components/badge/src/badge2.js.map +1 -1
  334. package/lib/components/button/index.js +2 -2
  335. package/lib/components/button/src/button-group.js +1 -1
  336. package/lib/components/button/src/button.js +76 -60
  337. package/lib/components/button/src/button.js.map +1 -1
  338. package/lib/components/button/src/button2.js +60 -76
  339. package/lib/components/button/src/button2.js.map +1 -1
  340. package/lib/components/calendar/index.js +2 -2
  341. package/lib/components/calendar/src/calendar.js +19 -131
  342. package/lib/components/calendar/src/calendar.js.map +1 -1
  343. package/lib/components/calendar/src/calendar2.js +131 -19
  344. package/lib/components/calendar/src/calendar2.js.map +1 -1
  345. package/lib/components/card/index.js +2 -2
  346. package/lib/components/card/src/card.js +16 -35
  347. package/lib/components/card/src/card.js.map +1 -1
  348. package/lib/components/card/src/card2.js +35 -16
  349. package/lib/components/card/src/card2.js.map +1 -1
  350. package/lib/components/carousel/index.js +2 -2
  351. package/lib/components/carousel/src/carousel-item.js +8 -69
  352. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  353. package/lib/components/carousel/src/carousel-item2.js +69 -8
  354. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  355. package/lib/components/cascader/src/cascader2.js +2 -2
  356. package/lib/components/check-tag/index.js +2 -2
  357. package/lib/components/check-tag/src/check-tag.js +31 -13
  358. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  359. package/lib/components/check-tag/src/check-tag2.js +13 -31
  360. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  361. package/lib/components/color-picker/index.js +2 -2
  362. package/lib/components/color-picker/src/color-picker.js +333 -51
  363. package/lib/components/color-picker/src/color-picker.js.map +1 -1
  364. package/lib/components/color-picker/src/color-picker2.js +51 -333
  365. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  366. package/lib/components/color-picker/src/components/predefine.js +1 -1
  367. package/lib/components/countdown/index.js +2 -2
  368. package/lib/components/countdown/src/countdown.js +24 -76
  369. package/lib/components/countdown/src/countdown.js.map +1 -1
  370. package/lib/components/countdown/src/countdown2.js +76 -24
  371. package/lib/components/countdown/src/countdown2.js.map +1 -1
  372. package/lib/components/descriptions/index.js +2 -2
  373. package/lib/components/descriptions/src/description.js +27 -120
  374. package/lib/components/descriptions/src/description.js.map +1 -1
  375. package/lib/components/descriptions/src/description2.js +120 -27
  376. package/lib/components/descriptions/src/description2.js.map +1 -1
  377. package/lib/components/descriptions/src/descriptions-row.js +7 -64
  378. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  379. package/lib/components/descriptions/src/descriptions-row2.js +64 -7
  380. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  381. package/lib/components/dialog/src/dialog-content.js +39 -93
  382. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  383. package/lib/components/dialog/src/dialog-content2.js +93 -39
  384. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  385. package/lib/components/dialog/src/dialog.js +1 -1
  386. package/lib/components/dialog/src/dialog2.js +1 -1
  387. package/lib/components/drawer/index.js +2 -2
  388. package/lib/components/drawer/src/drawer.js +186 -26
  389. package/lib/components/drawer/src/drawer.js.map +1 -1
  390. package/lib/components/drawer/src/drawer2.js +26 -186
  391. package/lib/components/drawer/src/drawer2.js.map +1 -1
  392. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  393. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  394. package/lib/components/dropdown/src/dropdown.js +2 -2
  395. package/lib/components/dropdown/src/dropdown2.js +1 -1
  396. package/lib/components/empty/index.js +2 -2
  397. package/lib/components/empty/src/empty.js +55 -11
  398. package/lib/components/empty/src/empty.js.map +1 -1
  399. package/lib/components/empty/src/empty2.js +11 -55
  400. package/lib/components/empty/src/empty2.js.map +1 -1
  401. package/lib/components/form/index.js +4 -4
  402. package/lib/components/form/src/form-item.js +47 -332
  403. package/lib/components/form/src/form-item.js.map +1 -1
  404. package/lib/components/form/src/form-item2.js +332 -47
  405. package/lib/components/form/src/form-item2.js.map +1 -1
  406. package/lib/components/form/src/form.js +149 -61
  407. package/lib/components/form/src/form.js.map +1 -1
  408. package/lib/components/form/src/form2.js +61 -149
  409. package/lib/components/form/src/form2.js.map +1 -1
  410. package/lib/components/icon/index.js +2 -2
  411. package/lib/components/icon/src/icon.js +8 -36
  412. package/lib/components/icon/src/icon.js.map +1 -1
  413. package/lib/components/icon/src/icon2.js +36 -8
  414. package/lib/components/icon/src/icon2.js.map +1 -1
  415. package/lib/components/image/index.js +2 -2
  416. package/lib/components/image/src/image.js +65 -225
  417. package/lib/components/image/src/image.js.map +1 -1
  418. package/lib/components/image/src/image2.js +225 -65
  419. package/lib/components/image/src/image2.js.map +1 -1
  420. package/lib/components/image-viewer/index.js +2 -2
  421. package/lib/components/image-viewer/src/image-viewer.js +39 -401
  422. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  423. package/lib/components/image-viewer/src/image-viewer2.js +401 -39
  424. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  425. package/lib/components/index.js +45 -45
  426. package/lib/components/input-number/index.js +2 -2
  427. package/lib/components/input-number/src/input-number.js +333 -68
  428. package/lib/components/input-number/src/input-number.js.map +1 -1
  429. package/lib/components/input-number/src/input-number2.js +68 -333
  430. package/lib/components/input-number/src/input-number2.js.map +1 -1
  431. package/lib/components/page-header/index.js +2 -2
  432. package/lib/components/page-header/src/page-header.js +103 -18
  433. package/lib/components/page-header/src/page-header.js.map +1 -1
  434. package/lib/components/page-header/src/page-header2.js +18 -103
  435. package/lib/components/page-header/src/page-header2.js.map +1 -1
  436. package/lib/components/pagination/src/components/jumper.js +60 -9
  437. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  438. package/lib/components/pagination/src/components/jumper2.js +9 -60
  439. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  440. package/lib/components/pagination/src/components/pager.js +17 -218
  441. package/lib/components/pagination/src/components/pager.js.map +1 -1
  442. package/lib/components/pagination/src/components/pager2.js +218 -17
  443. package/lib/components/pagination/src/components/pager2.js.map +1 -1
  444. package/lib/components/pagination/src/components/prev.js +38 -19
  445. package/lib/components/pagination/src/components/prev.js.map +1 -1
  446. package/lib/components/pagination/src/components/prev2.js +19 -38
  447. package/lib/components/pagination/src/components/prev2.js.map +1 -1
  448. package/lib/components/pagination/src/components/total.js +28 -7
  449. package/lib/components/pagination/src/components/total.js.map +1 -1
  450. package/lib/components/pagination/src/components/total2.js +7 -28
  451. package/lib/components/pagination/src/components/total2.js.map +1 -1
  452. package/lib/components/pagination/src/pagination.js +4 -4
  453. package/lib/components/popconfirm/src/popconfirm.js +2 -2
  454. package/lib/components/popover/index.js +2 -2
  455. package/lib/components/popover/src/popover.js +67 -111
  456. package/lib/components/popover/src/popover.js.map +1 -1
  457. package/lib/components/popover/src/popover2.js +111 -67
  458. package/lib/components/popover/src/popover2.js.map +1 -1
  459. package/lib/components/popper/index.js +6 -6
  460. package/lib/components/popper/src/content.js +139 -99
  461. package/lib/components/popper/src/content.js.map +1 -1
  462. package/lib/components/popper/src/content2.js +99 -139
  463. package/lib/components/popper/src/content2.js.map +1 -1
  464. package/lib/components/popper/src/popper.js +32 -28
  465. package/lib/components/popper/src/popper.js.map +1 -1
  466. package/lib/components/popper/src/popper2.js +28 -32
  467. package/lib/components/popper/src/popper2.js.map +1 -1
  468. package/lib/components/popper/src/trigger.js +32 -121
  469. package/lib/components/popper/src/trigger.js.map +1 -1
  470. package/lib/components/popper/src/trigger2.js +121 -32
  471. package/lib/components/popper/src/trigger2.js.map +1 -1
  472. package/lib/components/progress/index.js +2 -2
  473. package/lib/components/progress/src/progress.js +59 -204
  474. package/lib/components/progress/src/progress.js.map +1 -1
  475. package/lib/components/progress/src/progress2.js +204 -59
  476. package/lib/components/progress/src/progress2.js.map +1 -1
  477. package/lib/components/radio/index.js +4 -4
  478. package/lib/components/radio/src/radio-button.js +1 -1
  479. package/lib/components/radio/src/radio-group.js +70 -43
  480. package/lib/components/radio/src/radio-group.js.map +1 -1
  481. package/lib/components/radio/src/radio-group2.js +43 -70
  482. package/lib/components/radio/src/radio-group2.js.map +1 -1
  483. package/lib/components/radio/src/radio.js +37 -74
  484. package/lib/components/radio/src/radio.js.map +1 -1
  485. package/lib/components/radio/src/radio2.js +74 -37
  486. package/lib/components/radio/src/radio2.js.map +1 -1
  487. package/lib/components/resizable-columns/index.js +2 -2
  488. package/lib/components/resizable-columns/src/resizable-columns.js +12 -237
  489. package/lib/components/resizable-columns/src/resizable-columns.js.map +1 -1
  490. package/lib/components/resizable-columns/src/resizable-columns2.js +237 -12
  491. package/lib/components/resizable-columns/src/resizable-columns2.js.map +1 -1
  492. package/lib/components/result/index.js +2 -2
  493. package/lib/components/result/src/result.js +31 -63
  494. package/lib/components/result/src/result.js.map +1 -1
  495. package/lib/components/result/src/result2.js +63 -31
  496. package/lib/components/result/src/result2.js.map +1 -1
  497. package/lib/components/roving-focus-group/index.js +2 -2
  498. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js +1 -1
  499. package/lib/components/roving-focus-group/src/roving-focus-group.js +33 -27
  500. package/lib/components/roving-focus-group/src/roving-focus-group.js.map +1 -1
  501. package/lib/components/roving-focus-group/src/roving-focus-group2.js +27 -33
  502. package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -1
  503. package/lib/components/roving-focus-group/src/roving-focus-item.js +1 -1
  504. package/lib/components/row/index.js +2 -2
  505. package/lib/components/row/src/row.js +32 -45
  506. package/lib/components/row/src/row.js.map +1 -1
  507. package/lib/components/row/src/row2.js +45 -32
  508. package/lib/components/row/src/row2.js.map +1 -1
  509. package/lib/components/select/src/select.js +2 -2
  510. package/lib/components/select-v2/index.d.ts +18 -0
  511. package/lib/components/select-v2/src/defaults.d.ts +5 -0
  512. package/lib/components/select-v2/src/defaults.js +7 -2
  513. package/lib/components/select-v2/src/defaults.js.map +1 -1
  514. package/lib/components/select-v2/src/group-item.js +3 -2
  515. package/lib/components/select-v2/src/group-item.js.map +1 -1
  516. package/lib/components/select-v2/src/group-item.vue.d.ts +2 -0
  517. package/lib/components/select-v2/src/option-item.js +1 -1
  518. package/lib/components/select-v2/src/option-item.js.map +1 -1
  519. package/lib/components/select-v2/src/option-item.vue.d.ts +2 -0
  520. package/lib/components/select-v2/src/select-dropdown.d.ts +2 -0
  521. package/lib/components/select-v2/src/select-dropdown.js +6 -3
  522. package/lib/components/select-v2/src/select-dropdown.js.map +1 -1
  523. package/lib/components/select-v2/src/select.js +3 -2
  524. package/lib/components/select-v2/src/select.js.map +1 -1
  525. package/lib/components/select-v2/src/select.vue.d.ts +9 -0
  526. package/lib/components/select-v2/src/useAllowCreate.js +3 -3
  527. package/lib/components/select-v2/src/useAllowCreate.js.map +1 -1
  528. package/lib/components/select-v2/src/useSelect.js +4 -4
  529. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  530. package/lib/components/slider/src/button.js +94 -22
  531. package/lib/components/slider/src/button.js.map +1 -1
  532. package/lib/components/slider/src/button2.js +22 -94
  533. package/lib/components/slider/src/button2.js.map +1 -1
  534. package/lib/components/slider/src/slider2.js +1 -1
  535. package/lib/components/statistic/index.js +2 -2
  536. package/lib/components/statistic/src/statistic.js +25 -70
  537. package/lib/components/statistic/src/statistic.js.map +1 -1
  538. package/lib/components/statistic/src/statistic2.js +70 -25
  539. package/lib/components/statistic/src/statistic2.js.map +1 -1
  540. package/lib/components/switch/index.js +2 -2
  541. package/lib/components/switch/src/switch.js +93 -244
  542. package/lib/components/switch/src/switch.js.map +1 -1
  543. package/lib/components/switch/src/switch2.js +244 -93
  544. package/lib/components/switch/src/switch2.js.map +1 -1
  545. package/lib/components/tabs/index.js +3 -3
  546. package/lib/components/tabs/src/tab-bar.js +75 -7
  547. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  548. package/lib/components/tabs/src/tab-bar2.js +7 -75
  549. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  550. package/lib/components/tabs/src/tab-nav.js +1 -1
  551. package/lib/components/tabs/src/tab-pane.js +76 -14
  552. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  553. package/lib/components/tabs/src/tab-pane2.js +14 -76
  554. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  555. package/lib/components/tag/index.js +2 -2
  556. package/lib/components/tag/src/tag.js +34 -98
  557. package/lib/components/tag/src/tag.js.map +1 -1
  558. package/lib/components/tag/src/tag2.js +98 -34
  559. package/lib/components/tag/src/tag2.js.map +1 -1
  560. package/lib/components/teleport/index.js +2 -2
  561. package/lib/components/teleport/src/teleport.js +18 -44
  562. package/lib/components/teleport/src/teleport.js.map +1 -1
  563. package/lib/components/teleport/src/teleport2.js +44 -18
  564. package/lib/components/teleport/src/teleport2.js.map +1 -1
  565. package/lib/components/text/index.js +2 -2
  566. package/lib/components/text/src/text.js +35 -22
  567. package/lib/components/text/src/text.js.map +1 -1
  568. package/lib/components/text/src/text2.js +22 -35
  569. package/lib/components/text/src/text2.js.map +1 -1
  570. package/lib/components/tooltip/index.js +2 -2
  571. package/lib/components/tooltip/src/content.js +179 -31
  572. package/lib/components/tooltip/src/content.js.map +1 -1
  573. package/lib/components/tooltip/src/content2.js +31 -179
  574. package/lib/components/tooltip/src/content2.js.map +1 -1
  575. package/lib/components/tooltip/src/tooltip.js +3 -3
  576. package/lib/components/tooltip/src/tooltip2.js +2 -2
  577. package/lib/components/tooltip/src/trigger.js +73 -16
  578. package/lib/components/tooltip/src/trigger.js.map +1 -1
  579. package/lib/components/tooltip/src/trigger2.js +16 -73
  580. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  581. package/lib/components/tooltip-v2/index.js +1 -1
  582. package/lib/components/tooltip-v2/src/tooltip.js +1 -1
  583. package/lib/components/tooltip-v2/src/tooltip2.js +2 -2
  584. package/lib/components/tooltip-v2/src/trigger.js +12 -91
  585. package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
  586. package/lib/components/tooltip-v2/src/trigger2.js +91 -12
  587. package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
  588. package/lib/components/transfer/index.js +2 -2
  589. package/lib/components/transfer/src/composables/use-check.js +1 -1
  590. package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
  591. package/lib/components/transfer/src/transfer-panel.js +21 -128
  592. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  593. package/lib/components/transfer/src/transfer-panel2.js +128 -21
  594. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  595. package/lib/components/transfer/src/transfer.js +162 -73
  596. package/lib/components/transfer/src/transfer.js.map +1 -1
  597. package/lib/components/transfer/src/transfer2.js +73 -162
  598. package/lib/components/transfer/src/transfer2.js.map +1 -1
  599. package/lib/components/upload/index.js +2 -2
  600. package/lib/components/upload/src/upload-content.js +31 -180
  601. package/lib/components/upload/src/upload-content.js.map +1 -1
  602. package/lib/components/upload/src/upload-content2.js +180 -31
  603. package/lib/components/upload/src/upload-content2.js.map +1 -1
  604. package/lib/components/upload/src/upload-list.js +27 -177
  605. package/lib/components/upload/src/upload-list.js.map +1 -1
  606. package/lib/components/upload/src/upload-list2.js +177 -27
  607. package/lib/components/upload/src/upload-list2.js.map +1 -1
  608. package/lib/components/upload/src/upload2.js +2 -2
  609. package/lib/index.js +45 -45
  610. package/package.json +1 -1
  611. package/theme-chalk/el-input.css +1 -1
  612. package/theme-chalk/el-select-v2.css +1 -1
  613. package/theme-chalk/index.css +1 -1
  614. package/theme-chalk/src/input.scss +5 -0
  615. package/theme-chalk/src/select-v2.scss +6 -0
  616. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useSelect.js","sources":["../../../../../../packages/components/select-v2/src/useSelect.ts"],"sourcesContent":["// @ts-nocheck\nimport { computed, inject, nextTick, onMounted, reactive, ref } from 'vue'\nimport { watch } from '../../config-provider'\nimport { isArray, isFunction, isObject } from '@vue/shared'\nimport { get, isEqual, isNil, debounce as lodashDebounce } from 'lodash-unified'\nimport { useResizeObserver } from '@vueuse/core'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport {\n ValidateComponentsMap,\n debugWarn,\n escapeStringRegexp,\n} from '@element-plus/utils'\nimport { useFormItem, useFormSize } from '@element-plus/components/form'\n\nimport { ArrowUp } from '@element-plus/icons-vue'\nimport { useAllowCreate } from './useAllowCreate'\n\nimport { flattenOptions } from './util'\n\nimport { useInput } from './useInput'\nimport type ElTooltip from '@element-plus/components/tooltip'\nimport type { SelectProps } from './defaults'\nimport type { CSSProperties, ExtractPropTypes } from 'vue'\nimport type { Option, OptionType } from './select.types'\nimport { TABLE_INJECTION_KEY } from '../../table/src/tokens'\n\nconst DEFAULT_INPUT_PLACEHOLDER = ''\nconst MINIMUM_INPUT_WIDTH = 11\nconst TAG_BASE_WIDTH = {\n larget: 51,\n default: 42,\n small: 33,\n}\n\nconst useSelect = (props: ExtractPropTypes<typeof SelectProps>, emit) => {\n // inject\n const { t } = useLocale()\n const nsSelectV2 = useNamespace('select-v2')\n const nsInput = useNamespace('input')\n const { form: elForm, formItem: elFormItem } = useFormItem()\n const table = inject(TABLE_INJECTION_KEY, undefined)\n\n const states = reactive({\n inputValue: DEFAULT_INPUT_PLACEHOLDER,\n displayInputValue: DEFAULT_INPUT_PLACEHOLDER,\n calculatedWidth: 0,\n cachedPlaceholder: '',\n cachedOptions: [] as Option[],\n createdOptions: [] as Option[],\n createdLabel: '',\n createdSelected: false,\n currentPlaceholder: '',\n hoveringIndex: -1,\n comboBoxHovering: false,\n isOnComposition: false,\n isSilentBlur: false,\n isComposing: false,\n inputLength: 20,\n selectWidth: 200,\n initialInputHeight: 0,\n previousQuery: null,\n previousValue: undefined,\n query: '',\n selectedLabel: '',\n softFocus: false,\n tagInMultiLine: false,\n })\n\n // data refs\n const selectedIndex = ref(-1)\n const popperSize = ref(-1)\n\n // DOM & Component refs\n const controlRef = ref(null)\n const inputRef = ref(null) // el-input ref\n const menuRef = ref(null)\n const popper = ref<InstanceType<typeof ElTooltip> | null>(null)\n const selectRef = ref(null)\n const selectionRef = ref(null) // tags ref\n const calculatorRef = ref<HTMLElement>(null)\n\n // the controller of the expanded popup\n const expanded = ref(false)\n\n const selectDisabled = computed(() => props.disabled || elForm?.disabled)\n const selectViewMode = computed(() => props.viewMode || elForm?.viewMode)\n\n const popupHeight = computed(() => {\n const totalHeight = filteredOptions.value.length * 34\n return totalHeight > props.height ? props.height : totalHeight\n })\n\n const hasModelValue = computed(() => {\n return !isNil(props.modelValue)\n })\n\n const showClearBtn = computed(() => {\n const hasValue = props.multiple\n ? Array.isArray(props.modelValue) && props.modelValue.length > 0\n : hasModelValue.value\n\n const criteria =\n props.clearable &&\n !selectDisabled.value &&\n !selectViewMode.value &&\n states.comboBoxHovering &&\n hasValue\n return criteria\n })\n\n const iconComponent = computed(() =>\n props.remote && props.filterable ? '' : ArrowUp\n )\n\n const iconReverse = computed(\n () => iconComponent.value && nsSelectV2.is('reverse', expanded.value)\n )\n\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(\n () => ValidateComponentsMap[validateState.value]\n )\n\n const debounce = computed(() => (props.remote ? 300 : 0))\n\n // filteredOptions includes flatten the data into one dimensional array.\n const emptyText = computed(() => {\n const options = filteredOptions.value\n if (props.loading) {\n return props.loadingText || t('el.select.loading')\n } else {\n if (props.remote && states.inputValue === '' && options.length === 0)\n return false\n if (props.filterable && states.inputValue && options.length > 0) {\n return props.noMatchText || t('el.select.noMatch')\n }\n if (options.length === 0) {\n return props.noDataText || t('el.select.noData')\n }\n }\n return null\n })\n\n const filteredOptions = computed(() => {\n const isValidOption = (o: Option): boolean => {\n // fill the conditions here.\n const query = states.inputValue\n // when query was given, we should test on the label see whether the label contains the given query\n const regexp = new RegExp(escapeStringRegexp(query), 'i')\n const containsQueryString = query ? regexp.test(o.label || '') : true\n return containsQueryString\n }\n if (props.loading) {\n return []\n }\n return flattenOptions(\n ((Array.isArray(props.options) && props.options ? props.options : []) as OptionType[])\n .concat(states.createdOptions)\n .map((v) => {\n if (isArray(v.options)) {\n const filtered = v.options.filter(isValidOption)\n if (filtered.length > 0) {\n return {\n ...v,\n options: filtered,\n }\n }\n } else {\n if (props.remote || isValidOption(v as Option)) {\n return v\n }\n }\n return null\n })\n .filter((v) => v !== null)\n )\n })\n\n const optionsAllDisabled = computed(() =>\n filteredOptions.value.every((option) => option.disabled)\n )\n\n const selectTableInput = computed(() => table && props.tableInput)\n const selectSize = computed(() => {\n if (selectTableInput.value) {\n return table!.props.size === 'small' ? 'small' : ''\n } else {\n const formSize = useFormSize()\n return formSize.value\n }\n })\n\n const collapseTagSize = computed(() =>\n 'small' === selectSize.value ? 'small' : 'default'\n )\n\n const tagMaxWidth = computed(() => {\n const select = selectionRef.value\n const size = collapseTagSize.value || 'default'\n const paddingLeft = select\n ? Number.parseInt(getComputedStyle(select).paddingLeft)\n : 0\n const paddingRight = select\n ? Number.parseInt(getComputedStyle(select).paddingRight)\n : 0\n return (\n states.selectWidth - paddingRight - paddingLeft - TAG_BASE_WIDTH[size]\n )\n })\n\n const calculatePopperSize = () => {\n popperSize.value = selectRef.value?.offsetWidth || 200\n }\n\n const inputWrapperStyle = computed(() => {\n return {\n width: `${\n states.calculatedWidth === 0\n ? MINIMUM_INPUT_WIDTH\n : Math.ceil(states.calculatedWidth) + MINIMUM_INPUT_WIDTH\n }px`,\n } as CSSProperties\n })\n\n const shouldShowPlaceholder = computed(() => {\n if (isArray(props.modelValue)) {\n return props.modelValue.length === 0 && !states.displayInputValue\n }\n\n // when it's not multiple mode, we only determine this flag based on filterable and expanded\n // when filterable flag is true, which means we have input box on the screen\n return props.filterable ? states.displayInputValue.length === 0 : true\n })\n\n const currentPlaceholder = computed(() => {\n const _placeholder = props.placeholder || t('el.select.placeholder')\n return props.multiple || isNil(props.modelValue)\n ? _placeholder\n : states.selectedLabel\n })\n\n // this obtains the actual popper DOM element.\n const popperRef = computed(() => popper.value?.popperRef?.contentRef)\n\n // the index with current value in options\n const indexRef = computed<number>(() => {\n if (props.multiple) {\n const len = (props.modelValue as []).length\n if ((props.modelValue as Array<any>).length > 0) {\n return filteredOptions.value.findIndex(\n (o) => o.value === props.modelValue[len - 1]\n )\n }\n } else {\n if (props.modelValue) {\n return filteredOptions.value.findIndex(\n (o) => o.value === props.modelValue\n )\n }\n }\n return -1\n })\n\n const dropdownMenuVisible = computed({\n get() {\n return expanded.value && emptyText.value !== false\n },\n set(val: boolean) {\n expanded.value = val\n },\n })\n\n const showTagList = computed(() =>\n states.cachedOptions.slice(0, props.maxCollapseTags)\n )\n\n const collapseTagList = computed(() =>\n states.cachedOptions.slice(props.maxCollapseTags)\n )\n\n // hooks\n const {\n createNewOption,\n removeNewOption,\n selectNewOption,\n clearAllNewOption,\n } = useAllowCreate(props, states)\n const {\n handleCompositionStart,\n handleCompositionUpdate,\n handleCompositionEnd,\n } = useInput((e) => onInput(e))\n\n // methods\n const focusAndUpdatePopup = () => {\n inputRef.value?.focus?.()\n popper.value?.updatePopper()\n }\n\n const toggleMenu = () => {\n if (props.automaticDropdown) return\n if (!selectDisabled.value && !selectViewMode.value) {\n if (states.isComposing) states.softFocus = true\n return nextTick(() => {\n expanded.value = !expanded.value\n inputRef.value?.focus?.()\n })\n }\n }\n\n const onInputChange = () => {\n if (props.filterable && states.inputValue !== states.selectedLabel) {\n states.query = states.selectedLabel\n }\n handleQueryChange(states.inputValue)\n return nextTick(() => {\n createNewOption(states.inputValue)\n })\n }\n\n const debouncedOnInputChange = lodashDebounce(onInputChange, debounce.value)\n\n const handleQueryChange = (val: string) => {\n if (states.previousQuery === val) {\n return\n }\n states.previousQuery = val\n if (props.filterable && isFunction(props.filterMethod)) {\n props.filterMethod(val)\n } else if (\n props.filterable &&\n props.remote &&\n isFunction(props.remoteMethod)\n ) {\n props.remoteMethod(val)\n }\n }\n\n const emitChange = (val: any | any[]) => {\n if (!isEqual(props.modelValue, val)) {\n emit(CHANGE_EVENT, val)\n }\n }\n\n const update = (val: any) => {\n emit(UPDATE_MODEL_EVENT, val)\n emitChange(val)\n states.previousValue = val?.toString()\n }\n\n const getValueIndex = (arr = [], value: unknown) => {\n if (!isObject(value)) {\n return arr.indexOf(value)\n }\n const valueKey = props.valueKey\n let index = -1\n arr.some((item, i) => {\n if (get(item, valueKey) === get(value, valueKey)) {\n index = i\n return true\n }\n return false\n })\n return index\n }\n\n const getValueKey = (item: unknown) => {\n return isObject(item) ? get(item, props.valueKey) : item\n }\n\n // if the selected item is item then we get label via indexing\n // otherwise it should be string we simply return the item itself.\n const getLabel = (item: unknown) => {\n return isObject(item) ? item.label : item\n }\n\n const resetInputHeight = () => {\n return nextTick(() => {\n if (!inputRef.value) return\n const selection = selectionRef.value\n\n selectRef.value.height = selection.offsetHeight\n if (expanded.value && emptyText.value !== false) {\n popper.value?.updatePopper?.()\n }\n })\n }\n\n const handleResize = () => {\n resetInputWidth()\n calculatePopperSize()\n popper.value?.updatePopper?.()\n if (props.multiple) {\n return resetInputHeight()\n }\n }\n\n const resetInputWidth = () => {\n const select = selectionRef.value\n if (select) {\n states.selectWidth = select.getBoundingClientRect().width\n }\n }\n\n const onSelect = (option: Option, idx: number, byClick = true) => {\n if (props.multiple) {\n let selectedOptions = (props.modelValue as any[]).slice()\n\n const index = getValueIndex(selectedOptions, getValueKey(option))\n if (index > -1) {\n selectedOptions = [\n ...selectedOptions.slice(0, index),\n ...selectedOptions.slice(index + 1),\n ]\n states.cachedOptions.splice(index, 1)\n removeNewOption(option)\n } else if (\n props.multipleLimit <= 0 ||\n selectedOptions.length < props.multipleLimit\n ) {\n selectedOptions = [...selectedOptions, getValueKey(option)]\n states.cachedOptions.push(option)\n selectNewOption(option)\n updateHoveringIndex(idx)\n }\n update(selectedOptions)\n if (option.created) {\n states.query = ''\n handleQueryChange('')\n states.inputLength = 20\n }\n if (props.filterable && !props.reserveKeyword) {\n inputRef.value.focus?.()\n onUpdateInputValue('')\n }\n if (props.filterable) {\n states.calculatedWidth =\n calculatorRef.value.getBoundingClientRect().width\n }\n resetInputHeight()\n setSoftFocus()\n } else {\n selectedIndex.value = idx\n states.selectedLabel = option.label\n update(getValueKey(option))\n expanded.value = false\n states.isComposing = false\n states.isSilentBlur = byClick\n selectNewOption(option)\n if (!option.created) {\n clearAllNewOption()\n }\n updateHoveringIndex(idx)\n }\n }\n\n const deleteTag = (event: MouseEvent, tag: Option) => {\n const { valueKey } = props\n const index = (props.modelValue as Array<any>).indexOf(get(tag, valueKey))\n\n if (index > -1 && !selectDisabled.value && !selectViewMode.value) {\n const value = [\n ...(props.modelValue as Array<unknown>).slice(0, index),\n ...(props.modelValue as Array<unknown>).slice(index + 1),\n ]\n states.cachedOptions.splice(index, 1)\n update(value)\n emit('remove-tag', get(tag, valueKey))\n states.softFocus = true\n removeNewOption(tag)\n return nextTick(focusAndUpdatePopup)\n }\n event.stopPropagation()\n }\n\n const handleFocus = (event: FocusEvent) => {\n const focused = states.isComposing\n states.isComposing = true\n if (!states.softFocus) {\n // If already in the focus state, shouldn't trigger event\n if (!focused) emit('focus', event)\n } else {\n states.softFocus = false\n }\n }\n\n const handleBlur = (event: FocusEvent) => {\n states.softFocus = false\n\n // reset input value when blurred\n // https://github.com/ElemeFE/element/pull/10822\n return nextTick(() => {\n inputRef.value?.blur?.()\n if (calculatorRef.value) {\n states.calculatedWidth =\n calculatorRef.value.getBoundingClientRect().width\n }\n if (states.isSilentBlur) {\n states.isSilentBlur = false\n } else {\n if (states.isComposing) {\n emit('blur', event)\n }\n }\n states.isComposing = false\n })\n }\n\n // keyboard handlers\n const handleEsc = () => {\n if (states.displayInputValue.length > 0) {\n onUpdateInputValue('')\n } else {\n expanded.value = false\n }\n }\n\n const handleDel = (e: KeyboardEvent) => {\n if (states.displayInputValue.length === 0) {\n e.preventDefault()\n const selected = (props.modelValue as Array<any>).slice()\n selected.pop()\n removeNewOption(states.cachedOptions.pop())\n update(selected)\n }\n }\n\n const handleClear = () => {\n let emptyValue: string | any[]\n if (isArray(props.modelValue)) {\n emptyValue = []\n } else {\n emptyValue = undefined\n }\n\n states.softFocus = true\n if (props.multiple) {\n states.cachedOptions = []\n } else {\n states.selectedLabel = ''\n }\n expanded.value = false\n update(emptyValue)\n emit('clear')\n clearAllNewOption()\n return nextTick(focusAndUpdatePopup)\n }\n\n const onUpdateInputValue = (val: string) => {\n states.displayInputValue = val\n states.inputValue = val\n }\n\n const onKeyboardNavigate = (\n direction: 'forward' | 'backward',\n hoveringIndex: number = undefined\n ) => {\n const options = filteredOptions.value\n if (\n !['forward', 'backward'].includes(direction) ||\n selectDisabled.value ||\n selectViewMode.value ||\n options.length <= 0 ||\n optionsAllDisabled.value\n ) {\n return\n }\n if (!expanded.value) {\n return toggleMenu()\n }\n if (hoveringIndex === undefined) {\n hoveringIndex = states.hoveringIndex\n }\n let newIndex = -1\n if (direction === 'forward') {\n newIndex = hoveringIndex + 1\n if (newIndex >= options.length) {\n // return to the first option\n newIndex = 0\n }\n } else if (direction === 'backward') {\n newIndex = hoveringIndex - 1\n if (newIndex < 0 || newIndex >= options.length) {\n // navigate to the last one\n newIndex = options.length - 1\n }\n }\n const option = options[newIndex]\n if (option.disabled || option.type === 'Group') {\n // prevent dispatching multiple nextTick callbacks.\n return onKeyboardNavigate(direction, newIndex)\n } else {\n updateHoveringIndex(newIndex)\n scrollToItem(newIndex)\n }\n }\n\n const onKeyboardSelect = () => {\n if (!expanded.value) {\n return toggleMenu()\n } else if (\n ~states.hoveringIndex &&\n filteredOptions.value[states.hoveringIndex]\n ) {\n onSelect(\n filteredOptions.value[states.hoveringIndex],\n states.hoveringIndex,\n false\n )\n }\n }\n\n const updateHoveringIndex = (idx: number) => {\n states.hoveringIndex = idx\n }\n\n const resetHoveringIndex = () => {\n states.hoveringIndex = -1\n }\n\n const setSoftFocus = () => {\n const _input = inputRef.value\n if (_input) {\n _input.focus?.()\n }\n }\n\n const onInput = (event) => {\n const value = event.target.value\n onUpdateInputValue(value)\n if (states.displayInputValue.length > 0 && !expanded.value) {\n expanded.value = true\n }\n\n states.calculatedWidth = calculatorRef.value.getBoundingClientRect().width\n if (props.multiple) {\n resetInputHeight()\n }\n if (props.remote) {\n debouncedOnInputChange()\n } else {\n return onInputChange()\n }\n }\n\n const handleClickOutside = () => {\n expanded.value = false\n return handleBlur()\n }\n\n const handleMenuEnter = () => {\n states.inputValue = states.displayInputValue\n return nextTick(() => {\n if (~indexRef.value) {\n updateHoveringIndex(indexRef.value)\n scrollToItem(states.hoveringIndex)\n }\n })\n }\n\n const scrollToItem = (index: number) => {\n menuRef.value.scrollToItem(index)\n }\n\n const initStates = () => {\n resetHoveringIndex()\n if (props.multiple) {\n if ((props.modelValue as Array<any>).length > 0) {\n let initHovering = false\n states.cachedOptions.length = 0\n states.previousValue = props.modelValue.toString()\n ;(props.modelValue as Array<any>).forEach((selected) => {\n const itemIndex = filteredOptions.value.findIndex(\n (option) => getValueKey(option) === selected\n )\n if (~itemIndex) {\n states.cachedOptions.push(\n filteredOptions.value[itemIndex] as Option\n )\n if (!initHovering) {\n updateHoveringIndex(itemIndex)\n }\n initHovering = true\n }\n })\n } else {\n states.cachedOptions = []\n states.previousValue = undefined\n }\n } else {\n if (hasModelValue.value) {\n states.previousValue = props.modelValue\n const options = filteredOptions.value\n const selectedItemIndex = options.findIndex(\n (option) => getValueKey(option) === getValueKey(props.modelValue)\n )\n if (~selectedItemIndex) {\n states.selectedLabel = options[selectedItemIndex].label\n updateHoveringIndex(selectedItemIndex)\n } else {\n states.selectedLabel = `${props.modelValue}`\n }\n } else {\n states.selectedLabel = ''\n states.previousValue = undefined\n }\n }\n clearAllNewOption()\n calculatePopperSize()\n }\n\n // in order to track these individually, we need to turn them into refs instead of watching the entire\n // reactive object which could cause perf penalty when unnecessary field gets changed the watch method will\n // be invoked.\n watch(expanded, (val) => {\n emit('visible-change', val)\n if (val) {\n popper.value.update?.()\n // the purpose of this function is to differ the blur event trigger mechanism\n } else {\n states.displayInputValue = ''\n states.previousQuery = null\n createNewOption('')\n }\n })\n\n watch(\n () => props.modelValue,\n (val, oldVal) => {\n if (!val || val.toString() !== states.previousValue) {\n initStates()\n }\n if (!isEqual(val, oldVal) && props.validateEvent) {\n elFormItem?.validate?.('change').catch((err) => debugWarn(err))\n }\n },\n {\n deep: true,\n }\n )\n\n watch(\n () => props.options,\n () => {\n const input = inputRef.value\n // filter or remote-search scenarios are not initialized\n if (!input || (input && document.activeElement !== input)) {\n initStates()\n }\n },\n {\n deep: true,\n }\n )\n\n // fix the problem that scrollTop is not reset in filterable mode\n watch(filteredOptions, () => {\n return nextTick(menuRef.value.resetScrollTop)\n })\n\n watch(\n () => dropdownMenuVisible.value,\n (val) => {\n if (!val) {\n resetHoveringIndex()\n }\n }\n )\n\n onMounted(() => {\n initStates()\n })\n useResizeObserver(selectRef, handleResize)\n\n return {\n // data exports\n collapseTagSize,\n currentPlaceholder,\n expanded,\n emptyText,\n popupHeight,\n debounce,\n filteredOptions,\n iconComponent,\n iconReverse,\n inputWrapperStyle,\n popperSize,\n dropdownMenuVisible,\n hasModelValue,\n // readonly,\n shouldShowPlaceholder,\n selectDisabled,\n selectViewMode,\n selectTableInput,\n selectSize,\n showClearBtn,\n states,\n tagMaxWidth,\n nsSelectV2,\n nsInput,\n\n // refs items exports\n calculatorRef,\n controlRef,\n inputRef,\n menuRef,\n popper,\n selectRef,\n selectionRef,\n\n popperRef,\n\n validateState,\n validateIcon,\n showTagList,\n collapseTagList,\n\n // methods exports\n debouncedOnInputChange,\n deleteTag,\n getLabel,\n getValueKey,\n handleBlur,\n handleClear,\n handleClickOutside,\n handleDel,\n handleEsc,\n handleFocus,\n handleMenuEnter,\n handleResize,\n toggleMenu,\n scrollTo: scrollToItem,\n onInput,\n onKeyboardNavigate,\n onKeyboardSelect,\n onSelect,\n onHover: updateHoveringIndex,\n onUpdateInputValue,\n handleCompositionStart,\n handleCompositionEnd,\n handleCompositionUpdate,\n }\n}\n\nexport default useSelect\n"],"names":["useLocale","useNamespace","useFormItem","inject","TABLE_INJECTION_KEY","reactive","ref","computed","isNil","ArrowUp","ValidateComponentsMap","escapeStringRegexp","flattenOptions","isArray","useFormSize","useAllowCreate","useInput","nextTick","lodashDebounce","isFunction","isEqual","CHANGE_EVENT","UPDATE_MODEL_EVENT","isObject","get","watch","debugWarn","onMounted","useResizeObserver"],"mappings":"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"}
1
+ {"version":3,"file":"useSelect.js","sources":["../../../../../../packages/components/select-v2/src/useSelect.ts"],"sourcesContent":["// @ts-nocheck\nimport { computed, inject, nextTick, onMounted, reactive, ref } from 'vue'\nimport { watch } from '../../config-provider'\nimport { isArray, isFunction, isObject } from '@vue/shared'\nimport { get, isEqual, isNil, debounce as lodashDebounce } from 'lodash-unified'\nimport { useResizeObserver } from '@vueuse/core'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport {\n ValidateComponentsMap,\n debugWarn,\n escapeStringRegexp,\n} from '@element-plus/utils'\nimport { useFormItem, useFormSize } from '@element-plus/components/form'\n\nimport { ArrowUp } from '@element-plus/icons-vue'\nimport { useAllowCreate } from './useAllowCreate'\n\nimport { flattenOptions } from './util'\n\nimport { useInput } from './useInput'\nimport type ElTooltip from '@element-plus/components/tooltip'\nimport type { SelectProps } from './defaults'\nimport type { CSSProperties, ExtractPropTypes } from 'vue'\nimport type { Option, OptionType } from './select.types'\nimport { TABLE_INJECTION_KEY } from '../../table/src/tokens'\n\nconst DEFAULT_INPUT_PLACEHOLDER = ''\nconst MINIMUM_INPUT_WIDTH = 11\nconst TAG_BASE_WIDTH = {\n larget: 51,\n default: 42,\n small: 33,\n}\n\nconst useSelect = (props: ExtractPropTypes<typeof SelectProps>, emit) => {\n // inject\n const { t } = useLocale()\n const nsSelectV2 = useNamespace('select-v2')\n const nsInput = useNamespace('input')\n const { form: elForm, formItem: elFormItem } = useFormItem()\n const table = inject(TABLE_INJECTION_KEY, undefined)\n\n const states = reactive({\n inputValue: DEFAULT_INPUT_PLACEHOLDER,\n displayInputValue: DEFAULT_INPUT_PLACEHOLDER,\n calculatedWidth: 0,\n cachedPlaceholder: '',\n cachedOptions: [] as Option[],\n createdOptions: [] as Option[],\n createdLabel: '',\n createdSelected: false,\n currentPlaceholder: '',\n hoveringIndex: -1,\n comboBoxHovering: false,\n isOnComposition: false,\n isSilentBlur: false,\n isComposing: false,\n inputLength: 20,\n selectWidth: 200,\n initialInputHeight: 0,\n previousQuery: null,\n previousValue: undefined,\n query: '',\n selectedLabel: '',\n softFocus: false,\n tagInMultiLine: false,\n })\n\n // data refs\n const selectedIndex = ref(-1)\n const popperSize = ref(-1)\n\n // DOM & Component refs\n const controlRef = ref(null)\n const inputRef = ref(null) // el-input ref\n const menuRef = ref(null)\n const popper = ref<InstanceType<typeof ElTooltip> | null>(null)\n const selectRef = ref(null)\n const selectionRef = ref(null) // tags ref\n const calculatorRef = ref<HTMLElement>(null)\n\n // the controller of the expanded popup\n const expanded = ref(false)\n\n const selectDisabled = computed(() => props.disabled || elForm?.disabled)\n const selectViewMode = computed(() => props.viewMode || elForm?.viewMode)\n\n const popupHeight = computed(() => {\n const totalHeight = filteredOptions.value.length * 34\n return totalHeight > props.height ? props.height : totalHeight\n })\n\n const hasModelValue = computed(() => {\n return !isNil(props.modelValue)\n })\n\n const showClearBtn = computed(() => {\n const hasValue = props.multiple\n ? Array.isArray(props.modelValue) && props.modelValue.length > 0\n : hasModelValue.value\n\n const criteria =\n props.clearable &&\n !selectDisabled.value &&\n !selectViewMode.value &&\n states.comboBoxHovering &&\n hasValue\n return criteria\n })\n\n const iconComponent = computed(() =>\n props.remote && props.filterable ? '' : ArrowUp\n )\n\n const iconReverse = computed(\n () => iconComponent.value && nsSelectV2.is('reverse', expanded.value)\n )\n\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(\n () => ValidateComponentsMap[validateState.value]\n )\n\n const debounce = computed(() => (props.remote ? 300 : 0))\n\n // filteredOptions includes flatten the data into one dimensional array.\n const emptyText = computed(() => {\n const options = filteredOptions.value\n if (props.loading) {\n return props.loadingText || t('el.select.loading')\n } else {\n if (props.remote && states.inputValue === '' && options.length === 0)\n return false\n if (props.filterable && states.inputValue && options.length > 0) {\n return props.noMatchText || t('el.select.noMatch')\n }\n if (options.length === 0) {\n return props.noDataText || t('el.select.noData')\n }\n }\n return null\n })\n\n const filteredOptions = computed(() => {\n const isValidOption = (o: Option): boolean => {\n // fill the conditions here.\n const query = states.inputValue\n // when query was given, we should test on the label see whether the label contains the given query\n const regexp = new RegExp(escapeStringRegexp(query), 'i')\n const containsQueryString = query ? regexp.test(o[props.labelKey] || '') : true\n return containsQueryString\n }\n if (props.loading) {\n return []\n }\n return flattenOptions(\n ((Array.isArray(props.options) && props.options ? props.options : []) as OptionType[])\n .concat(states.createdOptions)\n .map((v) => {\n if (isArray(v.options)) {\n const filtered = v.options.filter(isValidOption)\n if (filtered.length > 0) {\n return {\n ...v,\n options: filtered,\n }\n }\n } else {\n if (props.remote || isValidOption(v as Option)) {\n return v\n }\n }\n return null\n })\n .filter((v) => v !== null)\n )\n })\n\n const optionsAllDisabled = computed(() =>\n filteredOptions.value.every((option) => option.disabled)\n )\n\n const selectTableInput = computed(() => table && props.tableInput)\n const selectSize = computed(() => {\n if (selectTableInput.value) {\n return table!.props.size === 'small' ? 'small' : ''\n } else {\n const formSize = useFormSize()\n return formSize.value\n }\n })\n\n const collapseTagSize = computed(() =>\n 'small' === selectSize.value ? 'small' : 'default'\n )\n\n const tagMaxWidth = computed(() => {\n const select = selectionRef.value\n const size = collapseTagSize.value || 'default'\n const paddingLeft = select\n ? Number.parseInt(getComputedStyle(select).paddingLeft)\n : 0\n const paddingRight = select\n ? Number.parseInt(getComputedStyle(select).paddingRight)\n : 0\n return (\n states.selectWidth - paddingRight - paddingLeft - TAG_BASE_WIDTH[size]\n )\n })\n\n const calculatePopperSize = () => {\n popperSize.value = selectRef.value?.offsetWidth || 200\n }\n\n const inputWrapperStyle = computed(() => {\n return {\n width: `${\n states.calculatedWidth === 0\n ? MINIMUM_INPUT_WIDTH\n : Math.ceil(states.calculatedWidth) + MINIMUM_INPUT_WIDTH\n }px`,\n } as CSSProperties\n })\n\n const shouldShowPlaceholder = computed(() => {\n if (isArray(props.modelValue)) {\n return props.modelValue.length === 0 && !states.displayInputValue\n }\n\n // when it's not multiple mode, we only determine this flag based on filterable and expanded\n // when filterable flag is true, which means we have input box on the screen\n return props.filterable ? states.displayInputValue.length === 0 : true\n })\n\n const currentPlaceholder = computed(() => {\n const _placeholder = props.placeholder || t('el.select.placeholder')\n return props.multiple || isNil(props.modelValue)\n ? _placeholder\n : states.selectedLabel\n })\n\n // this obtains the actual popper DOM element.\n const popperRef = computed(() => popper.value?.popperRef?.contentRef)\n\n // the index with current value in options\n const indexRef = computed<number>(() => {\n if (props.multiple) {\n const len = (props.modelValue as []).length\n if ((props.modelValue as Array<any>).length > 0) {\n return filteredOptions.value.findIndex(\n (o) => o.value === props.modelValue[len - 1]\n )\n }\n } else {\n if (props.modelValue) {\n return filteredOptions.value.findIndex(\n (o) => o.value === props.modelValue\n )\n }\n }\n return -1\n })\n\n const dropdownMenuVisible = computed({\n get() {\n return expanded.value && emptyText.value !== false\n },\n set(val: boolean) {\n expanded.value = val\n },\n })\n\n const showTagList = computed(() =>\n states.cachedOptions.slice(0, props.maxCollapseTags)\n )\n\n const collapseTagList = computed(() =>\n states.cachedOptions.slice(props.maxCollapseTags)\n )\n\n // hooks\n const {\n createNewOption,\n removeNewOption,\n selectNewOption,\n clearAllNewOption,\n } = useAllowCreate(props, states)\n const {\n handleCompositionStart,\n handleCompositionUpdate,\n handleCompositionEnd,\n } = useInput((e) => onInput(e))\n\n // methods\n const focusAndUpdatePopup = () => {\n inputRef.value?.focus?.()\n popper.value?.updatePopper()\n }\n\n const toggleMenu = () => {\n if (props.automaticDropdown) return\n if (!selectDisabled.value && !selectViewMode.value) {\n if (states.isComposing) states.softFocus = true\n return nextTick(() => {\n expanded.value = !expanded.value\n inputRef.value?.focus?.()\n })\n }\n }\n\n const onInputChange = () => {\n if (props.filterable && states.inputValue !== states.selectedLabel) {\n states.query = states.selectedLabel\n }\n handleQueryChange(states.inputValue)\n return nextTick(() => {\n createNewOption(states.inputValue)\n })\n }\n\n const debouncedOnInputChange = lodashDebounce(onInputChange, debounce.value)\n\n const handleQueryChange = (val: string) => {\n if (states.previousQuery === val) {\n return\n }\n states.previousQuery = val\n if (props.filterable && isFunction(props.filterMethod)) {\n props.filterMethod(val)\n } else if (\n props.filterable &&\n props.remote &&\n isFunction(props.remoteMethod)\n ) {\n props.remoteMethod(val)\n }\n }\n\n const emitChange = (val: any | any[]) => {\n if (!isEqual(props.modelValue, val)) {\n emit(CHANGE_EVENT, val)\n }\n }\n\n const update = (val: any) => {\n emit(UPDATE_MODEL_EVENT, val)\n emitChange(val)\n states.previousValue = val?.toString()\n }\n\n const getValueIndex = (arr = [], value: unknown) => {\n if (!isObject(value)) {\n return arr.indexOf(value)\n }\n const valueKey = props.valueKey\n let index = -1\n arr.some((item, i) => {\n if (get(item, valueKey) === get(value, valueKey)) {\n index = i\n return true\n }\n return false\n })\n return index\n }\n\n const getValueKey = (item: unknown) => {\n return isObject(item) ? get(item, props.valueKey) : item\n }\n\n // if the selected item is item then we get label via indexing\n // otherwise it should be string we simply return the item itself.\n const getLabel = (item: unknown) => {\n return isObject(item) ? item[props.labelKey] : item\n }\n\n const resetInputHeight = () => {\n return nextTick(() => {\n if (!inputRef.value) return\n const selection = selectionRef.value\n\n selectRef.value.height = selection.offsetHeight\n if (expanded.value && emptyText.value !== false) {\n popper.value?.updatePopper?.()\n }\n })\n }\n\n const handleResize = () => {\n resetInputWidth()\n calculatePopperSize()\n popper.value?.updatePopper?.()\n if (props.multiple) {\n return resetInputHeight()\n }\n }\n\n const resetInputWidth = () => {\n const select = selectionRef.value\n if (select) {\n states.selectWidth = select.getBoundingClientRect().width\n }\n }\n\n const onSelect = (option: Option, idx: number, byClick = true) => {\n if (props.multiple) {\n let selectedOptions = (props.modelValue as any[]).slice()\n\n const index = getValueIndex(selectedOptions, getValueKey(option))\n if (index > -1) {\n selectedOptions = [\n ...selectedOptions.slice(0, index),\n ...selectedOptions.slice(index + 1),\n ]\n states.cachedOptions.splice(index, 1)\n removeNewOption(option)\n } else if (\n props.multipleLimit <= 0 ||\n selectedOptions.length < props.multipleLimit\n ) {\n selectedOptions = [...selectedOptions, getValueKey(option)]\n states.cachedOptions.push(option)\n selectNewOption(option)\n updateHoveringIndex(idx)\n }\n update(selectedOptions)\n if (option.created) {\n states.query = ''\n handleQueryChange('')\n states.inputLength = 20\n }\n if (props.filterable && !props.reserveKeyword) {\n inputRef.value.focus?.()\n onUpdateInputValue('')\n }\n if (props.filterable) {\n states.calculatedWidth =\n calculatorRef.value.getBoundingClientRect().width\n }\n resetInputHeight()\n setSoftFocus()\n } else {\n selectedIndex.value = idx\n states.selectedLabel = option[props.labelKey]\n update(getValueKey(option))\n expanded.value = false\n states.isComposing = false\n states.isSilentBlur = byClick\n selectNewOption(option)\n if (!option.created) {\n clearAllNewOption()\n }\n updateHoveringIndex(idx)\n }\n }\n\n const deleteTag = (event: MouseEvent, tag: Option) => {\n const { valueKey } = props\n const index = (props.modelValue as Array<any>).indexOf(get(tag, valueKey))\n\n if (index > -1 && !selectDisabled.value && !selectViewMode.value) {\n const value = [\n ...(props.modelValue as Array<unknown>).slice(0, index),\n ...(props.modelValue as Array<unknown>).slice(index + 1),\n ]\n states.cachedOptions.splice(index, 1)\n update(value)\n emit('remove-tag', get(tag, valueKey))\n states.softFocus = true\n removeNewOption(tag)\n return nextTick(focusAndUpdatePopup)\n }\n event.stopPropagation()\n }\n\n const handleFocus = (event: FocusEvent) => {\n const focused = states.isComposing\n states.isComposing = true\n if (!states.softFocus) {\n // If already in the focus state, shouldn't trigger event\n if (!focused) emit('focus', event)\n } else {\n states.softFocus = false\n }\n }\n\n const handleBlur = (event: FocusEvent) => {\n states.softFocus = false\n\n // reset input value when blurred\n // https://github.com/ElemeFE/element/pull/10822\n return nextTick(() => {\n inputRef.value?.blur?.()\n if (calculatorRef.value) {\n states.calculatedWidth =\n calculatorRef.value.getBoundingClientRect().width\n }\n if (states.isSilentBlur) {\n states.isSilentBlur = false\n } else {\n if (states.isComposing) {\n emit('blur', event)\n }\n }\n states.isComposing = false\n })\n }\n\n // keyboard handlers\n const handleEsc = () => {\n if (states.displayInputValue.length > 0) {\n onUpdateInputValue('')\n } else {\n expanded.value = false\n }\n }\n\n const handleDel = (e: KeyboardEvent) => {\n if (states.displayInputValue.length === 0) {\n e.preventDefault()\n const selected = (props.modelValue as Array<any>).slice()\n selected.pop()\n removeNewOption(states.cachedOptions.pop())\n update(selected)\n }\n }\n\n const handleClear = () => {\n let emptyValue: string | any[]\n if (isArray(props.modelValue)) {\n emptyValue = []\n } else {\n emptyValue = undefined\n }\n\n states.softFocus = true\n if (props.multiple) {\n states.cachedOptions = []\n } else {\n states.selectedLabel = ''\n }\n expanded.value = false\n update(emptyValue)\n emit('clear')\n clearAllNewOption()\n return nextTick(focusAndUpdatePopup)\n }\n\n const onUpdateInputValue = (val: string) => {\n states.displayInputValue = val\n states.inputValue = val\n }\n\n const onKeyboardNavigate = (\n direction: 'forward' | 'backward',\n hoveringIndex: number = undefined\n ) => {\n const options = filteredOptions.value\n if (\n !['forward', 'backward'].includes(direction) ||\n selectDisabled.value ||\n selectViewMode.value ||\n options.length <= 0 ||\n optionsAllDisabled.value\n ) {\n return\n }\n if (!expanded.value) {\n return toggleMenu()\n }\n if (hoveringIndex === undefined) {\n hoveringIndex = states.hoveringIndex\n }\n let newIndex = -1\n if (direction === 'forward') {\n newIndex = hoveringIndex + 1\n if (newIndex >= options.length) {\n // return to the first option\n newIndex = 0\n }\n } else if (direction === 'backward') {\n newIndex = hoveringIndex - 1\n if (newIndex < 0 || newIndex >= options.length) {\n // navigate to the last one\n newIndex = options.length - 1\n }\n }\n const option = options[newIndex]\n if (option.disabled || option.type === 'Group') {\n // prevent dispatching multiple nextTick callbacks.\n return onKeyboardNavigate(direction, newIndex)\n } else {\n updateHoveringIndex(newIndex)\n scrollToItem(newIndex)\n }\n }\n\n const onKeyboardSelect = () => {\n if (!expanded.value) {\n return toggleMenu()\n } else if (\n ~states.hoveringIndex &&\n filteredOptions.value[states.hoveringIndex]\n ) {\n onSelect(\n filteredOptions.value[states.hoveringIndex],\n states.hoveringIndex,\n false\n )\n }\n }\n\n const updateHoveringIndex = (idx: number) => {\n states.hoveringIndex = idx\n }\n\n const resetHoveringIndex = () => {\n states.hoveringIndex = -1\n }\n\n const setSoftFocus = () => {\n const _input = inputRef.value\n if (_input) {\n _input.focus?.()\n }\n }\n\n const onInput = (event) => {\n const value = event.target.value\n onUpdateInputValue(value)\n if (states.displayInputValue.length > 0 && !expanded.value) {\n expanded.value = true\n }\n\n states.calculatedWidth = calculatorRef.value.getBoundingClientRect().width\n if (props.multiple) {\n resetInputHeight()\n }\n if (props.remote) {\n debouncedOnInputChange()\n } else {\n return onInputChange()\n }\n }\n\n const handleClickOutside = () => {\n expanded.value = false\n return handleBlur()\n }\n\n const handleMenuEnter = () => {\n states.inputValue = states.displayInputValue\n return nextTick(() => {\n if (~indexRef.value) {\n updateHoveringIndex(indexRef.value)\n scrollToItem(states.hoveringIndex)\n }\n })\n }\n\n const scrollToItem = (index: number) => {\n menuRef.value.scrollToItem(index)\n }\n\n const initStates = () => {\n resetHoveringIndex()\n if (props.multiple) {\n if ((props.modelValue as Array<any>).length > 0) {\n let initHovering = false\n states.cachedOptions.length = 0\n states.previousValue = props.modelValue.toString()\n ;(props.modelValue as Array<any>).forEach((selected) => {\n const itemIndex = filteredOptions.value.findIndex(\n (option) => getValueKey(option) === selected\n )\n if (~itemIndex) {\n states.cachedOptions.push(\n filteredOptions.value[itemIndex] as Option\n )\n if (!initHovering) {\n updateHoveringIndex(itemIndex)\n }\n initHovering = true\n }\n })\n } else {\n states.cachedOptions = []\n states.previousValue = undefined\n }\n } else {\n if (hasModelValue.value) {\n states.previousValue = props.modelValue\n const options = filteredOptions.value\n const selectedItemIndex = options.findIndex(\n (option) => getValueKey(option) === getValueKey(props.modelValue)\n )\n if (~selectedItemIndex) {\n states.selectedLabel = options[selectedItemIndex][props.labelKey]\n updateHoveringIndex(selectedItemIndex)\n } else {\n states.selectedLabel = `${props.modelValue}`\n }\n } else {\n states.selectedLabel = ''\n states.previousValue = undefined\n }\n }\n clearAllNewOption()\n calculatePopperSize()\n }\n\n // in order to track these individually, we need to turn them into refs instead of watching the entire\n // reactive object which could cause perf penalty when unnecessary field gets changed the watch method will\n // be invoked.\n watch(expanded, (val) => {\n emit('visible-change', val)\n if (val) {\n popper.value.update?.()\n // the purpose of this function is to differ the blur event trigger mechanism\n } else {\n states.displayInputValue = ''\n states.previousQuery = null\n createNewOption('')\n }\n })\n\n watch(\n () => props.modelValue,\n (val, oldVal) => {\n if (!val || val.toString() !== states.previousValue) {\n initStates()\n }\n if (!isEqual(val, oldVal) && props.validateEvent) {\n elFormItem?.validate?.('change').catch((err) => debugWarn(err))\n }\n },\n {\n deep: true,\n }\n )\n\n watch(\n () => props.options,\n () => {\n const input = inputRef.value\n // filter or remote-search scenarios are not initialized\n if (!input || (input && document.activeElement !== input)) {\n initStates()\n }\n },\n {\n deep: true,\n }\n )\n\n // fix the problem that scrollTop is not reset in filterable mode\n watch(filteredOptions, () => {\n return nextTick(menuRef.value.resetScrollTop)\n })\n\n watch(\n () => dropdownMenuVisible.value,\n (val) => {\n if (!val) {\n resetHoveringIndex()\n }\n }\n )\n\n onMounted(() => {\n initStates()\n })\n useResizeObserver(selectRef, handleResize)\n\n return {\n // data exports\n collapseTagSize,\n currentPlaceholder,\n expanded,\n emptyText,\n popupHeight,\n debounce,\n filteredOptions,\n iconComponent,\n iconReverse,\n inputWrapperStyle,\n popperSize,\n dropdownMenuVisible,\n hasModelValue,\n // readonly,\n shouldShowPlaceholder,\n selectDisabled,\n selectViewMode,\n selectTableInput,\n selectSize,\n showClearBtn,\n states,\n tagMaxWidth,\n nsSelectV2,\n nsInput,\n\n // refs items exports\n calculatorRef,\n controlRef,\n inputRef,\n menuRef,\n popper,\n selectRef,\n selectionRef,\n\n popperRef,\n\n validateState,\n validateIcon,\n showTagList,\n collapseTagList,\n\n // methods exports\n debouncedOnInputChange,\n deleteTag,\n getLabel,\n getValueKey,\n handleBlur,\n handleClear,\n handleClickOutside,\n handleDel,\n handleEsc,\n handleFocus,\n handleMenuEnter,\n handleResize,\n toggleMenu,\n scrollTo: scrollToItem,\n onInput,\n onKeyboardNavigate,\n onKeyboardSelect,\n onSelect,\n onHover: updateHoveringIndex,\n onUpdateInputValue,\n handleCompositionStart,\n handleCompositionEnd,\n handleCompositionUpdate,\n }\n}\n\nexport default useSelect\n"],"names":["useLocale","useNamespace","useFormItem","inject","TABLE_INJECTION_KEY","reactive","ref","computed","isNil","ArrowUp","ValidateComponentsMap","escapeStringRegexp","flattenOptions","isArray","useFormSize","useAllowCreate","useInput","nextTick","lodashDebounce","isFunction","isEqual","CHANGE_EVENT","UPDATE_MODEL_EVENT","isObject","get","watch","debugWarn","onMounted","useResizeObserver"],"mappings":"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"}
@@ -2,30 +2,102 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var core = require('@popperjs/core');
6
- require('../../../utils/index.js');
7
- require('../../../constants/index.js');
8
- var runtime = require('../../../utils/vue/props/runtime.js');
9
- var event = require('../../../constants/event.js');
10
- var types = require('../../../utils/types.js');
5
+ var vue = require('vue');
6
+ var index$1 = require('../../tooltip/index.js');
7
+ require('../../../hooks/index.js');
8
+ require('./composables/index.js');
9
+ var button = require('./button2.js');
10
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
11
+ var index = require('../../../hooks/use-namespace/index.js');
12
+ var useSliderButton = require('./composables/use-slider-button.js');
11
13
 
12
- const sliderButtonProps = runtime.buildProps({
13
- modelValue: {
14
- type: Number,
15
- default: 0
16
- },
17
- vertical: Boolean,
18
- tooltipClass: String,
19
- placement: {
20
- type: String,
21
- values: core.placements,
22
- default: "top"
14
+ const _hoisted_1 = ["tabindex"];
15
+ const __default__ = vue.defineComponent({
16
+ name: "ElSliderButton"
17
+ });
18
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
19
+ ...__default__,
20
+ props: button.sliderButtonProps,
21
+ emits: button.sliderButtonEmits,
22
+ setup(__props, { expose, emit }) {
23
+ const props = __props;
24
+ const ns = index.useNamespace("slider");
25
+ const initData = vue.reactive({
26
+ hovering: false,
27
+ dragging: false,
28
+ isClick: false,
29
+ startX: 0,
30
+ currentX: 0,
31
+ startY: 0,
32
+ currentY: 0,
33
+ startPosition: 0,
34
+ newPosition: 0,
35
+ oldValue: props.modelValue
36
+ });
37
+ const {
38
+ disabled,
39
+ viewMode,
40
+ button,
41
+ tooltip,
42
+ showTooltip,
43
+ tooltipVisible,
44
+ wrapperStyle,
45
+ formatValue,
46
+ handleMouseEnter,
47
+ handleMouseLeave,
48
+ onButtonDown,
49
+ onKeyDown,
50
+ setPosition
51
+ } = useSliderButton.useSliderButton(props, initData, emit);
52
+ const { hovering, dragging } = vue.toRefs(initData);
53
+ expose({
54
+ onButtonDown,
55
+ onKeyDown,
56
+ setPosition,
57
+ hovering,
58
+ dragging
59
+ });
60
+ return (_ctx, _cache) => {
61
+ return vue.openBlock(), vue.createElementBlock("div", {
62
+ ref_key: "button",
63
+ ref: button,
64
+ class: vue.normalizeClass([vue.unref(ns).e("button-wrapper"), { hover: vue.unref(hovering), dragging: vue.unref(dragging) }]),
65
+ style: vue.normalizeStyle(vue.unref(wrapperStyle)),
66
+ tabindex: vue.unref(disabled) ? -1 : 0,
67
+ onMouseenter: _cache[0] || (_cache[0] = (...args) => vue.unref(handleMouseEnter) && vue.unref(handleMouseEnter)(...args)),
68
+ onMouseleave: _cache[1] || (_cache[1] = (...args) => vue.unref(handleMouseLeave) && vue.unref(handleMouseLeave)(...args)),
69
+ onMousedown: _cache[2] || (_cache[2] = (...args) => vue.unref(onButtonDown) && vue.unref(onButtonDown)(...args)),
70
+ onTouchstart: _cache[3] || (_cache[3] = (...args) => vue.unref(onButtonDown) && vue.unref(onButtonDown)(...args)),
71
+ onFocus: _cache[4] || (_cache[4] = (...args) => vue.unref(handleMouseEnter) && vue.unref(handleMouseEnter)(...args)),
72
+ onBlur: _cache[5] || (_cache[5] = (...args) => vue.unref(handleMouseLeave) && vue.unref(handleMouseLeave)(...args)),
73
+ onKeydown: _cache[6] || (_cache[6] = (...args) => vue.unref(onKeyDown) && vue.unref(onKeyDown)(...args))
74
+ }, [
75
+ vue.createVNode(vue.unref(index$1.ElTooltip), {
76
+ ref_key: "tooltip",
77
+ ref: tooltip,
78
+ visible: vue.unref(tooltipVisible),
79
+ placement: _ctx.placement,
80
+ "fallback-placements": ["top", "bottom", "right", "left"],
81
+ "stop-popper-mouse-event": false,
82
+ "popper-class": _ctx.tooltipClass,
83
+ disabled: !vue.unref(showTooltip),
84
+ persistent: ""
85
+ }, {
86
+ content: vue.withCtx(() => [
87
+ vue.createElementVNode("span", null, vue.toDisplayString(vue.unref(formatValue)), 1)
88
+ ]),
89
+ default: vue.withCtx(() => [
90
+ vue.createElementVNode("div", {
91
+ class: vue.normalizeClass([vue.unref(ns).e("button"), { hover: vue.unref(hovering), dragging: vue.unref(dragging) }])
92
+ }, null, 2)
93
+ ]),
94
+ _: 1
95
+ }, 8, ["visible", "placement", "popper-class", "disabled"])
96
+ ], 46, _hoisted_1);
97
+ };
23
98
  }
24
99
  });
25
- const sliderButtonEmits = {
26
- [event.UPDATE_MODEL_EVENT]: (value) => types.isNumber(value)
27
- };
100
+ var SliderButton = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "D:\\workspace\\element-pe\\packages\\components\\slider\\src\\button.vue"]]);
28
101
 
29
- exports.sliderButtonEmits = sliderButtonEmits;
30
- exports.sliderButtonProps = sliderButtonProps;
102
+ exports["default"] = SliderButton;
31
103
  //# sourceMappingURL=button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.js","sources":["../../../../../../packages/components/slider/src/button.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport { buildProps, isNumber } from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport type { ExtractPropTypes, Ref } from 'vue'\nimport type Button from './button.vue'\n\nexport const sliderButtonProps = buildProps({\n modelValue: {\n type: Number,\n default: 0,\n },\n vertical: Boolean,\n tooltipClass: String,\n placement: {\n type: String,\n values: placements,\n default: 'top',\n },\n} as const)\nexport type SliderButtonProps = ExtractPropTypes<typeof sliderButtonProps>\n\nexport const sliderButtonEmits = {\n [UPDATE_MODEL_EVENT]: (value: number) => isNumber(value),\n}\nexport type SliderButtonEmits = typeof sliderButtonEmits\n\nexport type SliderButtonInstance = InstanceType<typeof Button>\n\nexport type ButtonRefs = Record<\n 'firstButton' | 'secondButton',\n Ref<SliderButtonInstance | undefined>\n>\n\nexport interface SliderButtonInitData {\n hovering: boolean\n dragging: boolean\n isClick: boolean\n startX: number\n currentX: number\n startY: number\n currentY: number\n startPosition: number\n newPosition: number\n oldValue: number\n}\n"],"names":["buildProps","placements","UPDATE_MODEL_EVENT","isNumber"],"mappings":";;;;;;;;;;;AAGY,MAAC,iBAAiB,GAAGA,kBAAU,CAAC;AAC5C,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,YAAY,EAAE,MAAM;AACtB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAEC,eAAU;AACtB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,iBAAiB,GAAG;AACjC,EAAE,CAACC,wBAAkB,GAAG,CAAC,KAAK,KAAKC,cAAQ,CAAC,KAAK,CAAC;AAClD;;;;;"}
1
+ {"version":3,"file":"button.js","sources":["../../../../../../packages/components/slider/src/button.vue"],"sourcesContent":["<template>\n <div\n ref=\"button\"\n :class=\"[ns.e('button-wrapper'), { hover: hovering, dragging }]\"\n :style=\"wrapperStyle\"\n :tabindex=\"disabled ? -1 : 0\"\n @mouseenter=\"handleMouseEnter\"\n @mouseleave=\"handleMouseLeave\"\n @mousedown=\"onButtonDown\"\n @touchstart=\"onButtonDown\"\n @focus=\"handleMouseEnter\"\n @blur=\"handleMouseLeave\"\n @keydown=\"onKeyDown\"\n >\n <el-tooltip\n ref=\"tooltip\"\n :visible=\"tooltipVisible\"\n :placement=\"placement\"\n :fallback-placements=\"['top', 'bottom', 'right', 'left']\"\n :stop-popper-mouse-event=\"false\"\n :popper-class=\"tooltipClass\"\n :disabled=\"!showTooltip\"\n persistent\n >\n <template #content>\n <span>{{ formatValue }}</span>\n </template>\n <div :class=\"[ns.e('button'), { hover: hovering, dragging }]\" />\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { reactive, toRefs } from 'vue'\nimport { ElTooltip } from '@element-plus/components/tooltip'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useSliderButton } from './composables'\nimport { sliderButtonEmits, sliderButtonProps } from './button'\nimport type { SliderButtonInitData } from './button'\n\ndefineOptions({\n name: 'ElSliderButton',\n})\n\nconst props = defineProps(sliderButtonProps)\nconst emit = defineEmits(sliderButtonEmits)\n\nconst ns = useNamespace('slider')\n\nconst initData = reactive<SliderButtonInitData>({\n hovering: false,\n dragging: false,\n isClick: false,\n startX: 0,\n currentX: 0,\n startY: 0,\n currentY: 0,\n startPosition: 0,\n newPosition: 0,\n oldValue: props.modelValue,\n})\n\nconst {\n disabled,\n viewMode,\n button,\n tooltip,\n showTooltip,\n tooltipVisible,\n wrapperStyle,\n formatValue,\n handleMouseEnter,\n handleMouseLeave,\n onButtonDown,\n onKeyDown,\n setPosition,\n} = useSliderButton(props, initData, emit)\n\nconst { hovering, dragging } = toRefs(initData)\n\ndefineExpose({\n onButtonDown,\n onKeyDown,\n setPosition,\n hovering,\n dragging,\n})\n</script>\n"],"names":["useNamespace","reactive","useSliderButton","toRefs"],"mappings":";;;;;;;;;;;;;;uCAwCc,CAAA;AAAA,EACZ,IAAM,EAAA,gBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,EAAA,GAAKA,mBAAa,QAAQ,CAAA,CAAA;AAEhC,IAAA,MAAM,WAAWC,YAA+B,CAAA;AAAA,MAC9C,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,OAAS,EAAA,KAAA;AAAA,MACT,MAAQ,EAAA,CAAA;AAAA,MACR,QAAU,EAAA,CAAA;AAAA,MACV,MAAQ,EAAA,CAAA;AAAA,MACR,QAAU,EAAA,CAAA;AAAA,MACV,aAAe,EAAA,CAAA;AAAA,MACf,WAAa,EAAA,CAAA;AAAA,MACb,UAAU,KAAM,CAAA,UAAA;AAAA,KACjB,CAAA,CAAA;AAED,IAAM,MAAA;AAAA,MACJ,QAAA;AAAA,MACA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAA;AAAA,MACA,cAAA;AAAA,MACA,YAAA;AAAA,MACA,WAAA;AAAA,MACA,gBAAA;AAAA,MACA,gBAAA;AAAA,MACA,YAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA;AAAA,KACE,GAAAC,+BAAA,CAAgB,KAAO,EAAA,QAAA,EAAU,IAAI,CAAA,CAAA;AAEzC,IAAA,MAAM,EAAE,QAAA,EAAU,QAAa,EAAA,GAAAC,UAAA,CAAO,QAAQ,CAAA,CAAA;AAE9C,IAAa,MAAA,CAAA;AAAA,MACX,YAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,102 +2,30 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var index$1 = require('../../tooltip/index.js');
7
- require('../../../hooks/index.js');
8
- require('./composables/index.js');
9
- var button = require('./button.js');
10
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
11
- var index = require('../../../hooks/use-namespace/index.js');
12
- var useSliderButton = require('./composables/use-slider-button.js');
5
+ var core = require('@popperjs/core');
6
+ require('../../../utils/index.js');
7
+ require('../../../constants/index.js');
8
+ var runtime = require('../../../utils/vue/props/runtime.js');
9
+ var event = require('../../../constants/event.js');
10
+ var types = require('../../../utils/types.js');
13
11
 
14
- const _hoisted_1 = ["tabindex"];
15
- const __default__ = vue.defineComponent({
16
- name: "ElSliderButton"
17
- });
18
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
19
- ...__default__,
20
- props: button.sliderButtonProps,
21
- emits: button.sliderButtonEmits,
22
- setup(__props, { expose, emit }) {
23
- const props = __props;
24
- const ns = index.useNamespace("slider");
25
- const initData = vue.reactive({
26
- hovering: false,
27
- dragging: false,
28
- isClick: false,
29
- startX: 0,
30
- currentX: 0,
31
- startY: 0,
32
- currentY: 0,
33
- startPosition: 0,
34
- newPosition: 0,
35
- oldValue: props.modelValue
36
- });
37
- const {
38
- disabled,
39
- viewMode,
40
- button,
41
- tooltip,
42
- showTooltip,
43
- tooltipVisible,
44
- wrapperStyle,
45
- formatValue,
46
- handleMouseEnter,
47
- handleMouseLeave,
48
- onButtonDown,
49
- onKeyDown,
50
- setPosition
51
- } = useSliderButton.useSliderButton(props, initData, emit);
52
- const { hovering, dragging } = vue.toRefs(initData);
53
- expose({
54
- onButtonDown,
55
- onKeyDown,
56
- setPosition,
57
- hovering,
58
- dragging
59
- });
60
- return (_ctx, _cache) => {
61
- return vue.openBlock(), vue.createElementBlock("div", {
62
- ref_key: "button",
63
- ref: button,
64
- class: vue.normalizeClass([vue.unref(ns).e("button-wrapper"), { hover: vue.unref(hovering), dragging: vue.unref(dragging) }]),
65
- style: vue.normalizeStyle(vue.unref(wrapperStyle)),
66
- tabindex: vue.unref(disabled) ? -1 : 0,
67
- onMouseenter: _cache[0] || (_cache[0] = (...args) => vue.unref(handleMouseEnter) && vue.unref(handleMouseEnter)(...args)),
68
- onMouseleave: _cache[1] || (_cache[1] = (...args) => vue.unref(handleMouseLeave) && vue.unref(handleMouseLeave)(...args)),
69
- onMousedown: _cache[2] || (_cache[2] = (...args) => vue.unref(onButtonDown) && vue.unref(onButtonDown)(...args)),
70
- onTouchstart: _cache[3] || (_cache[3] = (...args) => vue.unref(onButtonDown) && vue.unref(onButtonDown)(...args)),
71
- onFocus: _cache[4] || (_cache[4] = (...args) => vue.unref(handleMouseEnter) && vue.unref(handleMouseEnter)(...args)),
72
- onBlur: _cache[5] || (_cache[5] = (...args) => vue.unref(handleMouseLeave) && vue.unref(handleMouseLeave)(...args)),
73
- onKeydown: _cache[6] || (_cache[6] = (...args) => vue.unref(onKeyDown) && vue.unref(onKeyDown)(...args))
74
- }, [
75
- vue.createVNode(vue.unref(index$1.ElTooltip), {
76
- ref_key: "tooltip",
77
- ref: tooltip,
78
- visible: vue.unref(tooltipVisible),
79
- placement: _ctx.placement,
80
- "fallback-placements": ["top", "bottom", "right", "left"],
81
- "stop-popper-mouse-event": false,
82
- "popper-class": _ctx.tooltipClass,
83
- disabled: !vue.unref(showTooltip),
84
- persistent: ""
85
- }, {
86
- content: vue.withCtx(() => [
87
- vue.createElementVNode("span", null, vue.toDisplayString(vue.unref(formatValue)), 1)
88
- ]),
89
- default: vue.withCtx(() => [
90
- vue.createElementVNode("div", {
91
- class: vue.normalizeClass([vue.unref(ns).e("button"), { hover: vue.unref(hovering), dragging: vue.unref(dragging) }])
92
- }, null, 2)
93
- ]),
94
- _: 1
95
- }, 8, ["visible", "placement", "popper-class", "disabled"])
96
- ], 46, _hoisted_1);
97
- };
12
+ const sliderButtonProps = runtime.buildProps({
13
+ modelValue: {
14
+ type: Number,
15
+ default: 0
16
+ },
17
+ vertical: Boolean,
18
+ tooltipClass: String,
19
+ placement: {
20
+ type: String,
21
+ values: core.placements,
22
+ default: "top"
98
23
  }
99
24
  });
100
- var SliderButton = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "D:\\workspace\\element-pe\\packages\\components\\slider\\src\\button.vue"]]);
25
+ const sliderButtonEmits = {
26
+ [event.UPDATE_MODEL_EVENT]: (value) => types.isNumber(value)
27
+ };
101
28
 
102
- exports["default"] = SliderButton;
29
+ exports.sliderButtonEmits = sliderButtonEmits;
30
+ exports.sliderButtonProps = sliderButtonProps;
103
31
  //# sourceMappingURL=button2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button2.js","sources":["../../../../../../packages/components/slider/src/button.vue"],"sourcesContent":["<template>\n <div\n ref=\"button\"\n :class=\"[ns.e('button-wrapper'), { hover: hovering, dragging }]\"\n :style=\"wrapperStyle\"\n :tabindex=\"disabled ? -1 : 0\"\n @mouseenter=\"handleMouseEnter\"\n @mouseleave=\"handleMouseLeave\"\n @mousedown=\"onButtonDown\"\n @touchstart=\"onButtonDown\"\n @focus=\"handleMouseEnter\"\n @blur=\"handleMouseLeave\"\n @keydown=\"onKeyDown\"\n >\n <el-tooltip\n ref=\"tooltip\"\n :visible=\"tooltipVisible\"\n :placement=\"placement\"\n :fallback-placements=\"['top', 'bottom', 'right', 'left']\"\n :stop-popper-mouse-event=\"false\"\n :popper-class=\"tooltipClass\"\n :disabled=\"!showTooltip\"\n persistent\n >\n <template #content>\n <span>{{ formatValue }}</span>\n </template>\n <div :class=\"[ns.e('button'), { hover: hovering, dragging }]\" />\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { reactive, toRefs } from 'vue'\nimport { ElTooltip } from '@element-plus/components/tooltip'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useSliderButton } from './composables'\nimport { sliderButtonEmits, sliderButtonProps } from './button'\nimport type { SliderButtonInitData } from './button'\n\ndefineOptions({\n name: 'ElSliderButton',\n})\n\nconst props = defineProps(sliderButtonProps)\nconst emit = defineEmits(sliderButtonEmits)\n\nconst ns = useNamespace('slider')\n\nconst initData = reactive<SliderButtonInitData>({\n hovering: false,\n dragging: false,\n isClick: false,\n startX: 0,\n currentX: 0,\n startY: 0,\n currentY: 0,\n startPosition: 0,\n newPosition: 0,\n oldValue: props.modelValue,\n})\n\nconst {\n disabled,\n viewMode,\n button,\n tooltip,\n showTooltip,\n tooltipVisible,\n wrapperStyle,\n formatValue,\n handleMouseEnter,\n handleMouseLeave,\n onButtonDown,\n onKeyDown,\n setPosition,\n} = useSliderButton(props, initData, emit)\n\nconst { hovering, dragging } = toRefs(initData)\n\ndefineExpose({\n onButtonDown,\n onKeyDown,\n setPosition,\n hovering,\n dragging,\n})\n</script>\n"],"names":["useNamespace","reactive","useSliderButton","toRefs"],"mappings":";;;;;;;;;;;;;;uCAwCc,CAAA;AAAA,EACZ,IAAM,EAAA,gBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,EAAA,GAAKA,mBAAa,QAAQ,CAAA,CAAA;AAEhC,IAAA,MAAM,WAAWC,YAA+B,CAAA;AAAA,MAC9C,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,OAAS,EAAA,KAAA;AAAA,MACT,MAAQ,EAAA,CAAA;AAAA,MACR,QAAU,EAAA,CAAA;AAAA,MACV,MAAQ,EAAA,CAAA;AAAA,MACR,QAAU,EAAA,CAAA;AAAA,MACV,aAAe,EAAA,CAAA;AAAA,MACf,WAAa,EAAA,CAAA;AAAA,MACb,UAAU,KAAM,CAAA,UAAA;AAAA,KACjB,CAAA,CAAA;AAED,IAAM,MAAA;AAAA,MACJ,QAAA;AAAA,MACA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAA;AAAA,MACA,cAAA;AAAA,MACA,YAAA;AAAA,MACA,WAAA;AAAA,MACA,gBAAA;AAAA,MACA,gBAAA;AAAA,MACA,YAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA;AAAA,KACE,GAAAC,+BAAA,CAAgB,KAAO,EAAA,QAAA,EAAU,IAAI,CAAA,CAAA;AAEzC,IAAA,MAAM,EAAE,QAAA,EAAU,QAAa,EAAA,GAAAC,UAAA,CAAO,QAAQ,CAAA,CAAA;AAE9C,IAAa,MAAA,CAAA;AAAA,MACX,YAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"button2.js","sources":["../../../../../../packages/components/slider/src/button.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport { buildProps, isNumber } from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport type { ExtractPropTypes, Ref } from 'vue'\nimport type Button from './button.vue'\n\nexport const sliderButtonProps = buildProps({\n modelValue: {\n type: Number,\n default: 0,\n },\n vertical: Boolean,\n tooltipClass: String,\n placement: {\n type: String,\n values: placements,\n default: 'top',\n },\n} as const)\nexport type SliderButtonProps = ExtractPropTypes<typeof sliderButtonProps>\n\nexport const sliderButtonEmits = {\n [UPDATE_MODEL_EVENT]: (value: number) => isNumber(value),\n}\nexport type SliderButtonEmits = typeof sliderButtonEmits\n\nexport type SliderButtonInstance = InstanceType<typeof Button>\n\nexport type ButtonRefs = Record<\n 'firstButton' | 'secondButton',\n Ref<SliderButtonInstance | undefined>\n>\n\nexport interface SliderButtonInitData {\n hovering: boolean\n dragging: boolean\n isClick: boolean\n startX: number\n currentX: number\n startY: number\n currentY: number\n startPosition: number\n newPosition: number\n oldValue: number\n}\n"],"names":["buildProps","placements","UPDATE_MODEL_EVENT","isNumber"],"mappings":";;;;;;;;;;;AAGY,MAAC,iBAAiB,GAAGA,kBAAU,CAAC;AAC5C,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,YAAY,EAAE,MAAM;AACtB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAEC,eAAU;AACtB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,iBAAiB,GAAG;AACjC,EAAE,CAACC,wBAAkB,GAAG,CAAC,KAAK,KAAKC,cAAQ,CAAC,KAAK,CAAC;AAClD;;;;;"}
@@ -8,7 +8,7 @@ require('../../form/index.js');
8
8
  require('../../../hooks/index.js');
9
9
  var constants = require('./constants.js');
10
10
  var slider = require('./slider.js');
11
- var button = require('./button2.js');
11
+ var button = require('./button.js');
12
12
  var marker = require('./marker.js');
13
13
  require('./composables/index.js');
14
14
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('../../utils/index.js');
6
- var statistic$1 = require('./src/statistic.js');
7
- var statistic = require('./src/statistic2.js');
6
+ var statistic$1 = require('./src/statistic2.js');
7
+ var statistic = require('./src/statistic.js');
8
8
  var install = require('../../utils/vue/install.js');
9
9
 
10
10
  const ElStatistic = install.withInstall(statistic$1["default"]);