@element-plus/nightly 0.0.20241221 → 0.0.20241222

Sign up to get free protection for your applications and to get access to all the features.
Files changed (534) hide show
  1. package/dist/index.full.js +2 -2
  2. package/dist/index.full.min.js +2 -2
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +2 -2
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +2 -2
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hr.js +1 -1
  92. package/dist/locale/hr.min.js +1 -1
  93. package/dist/locale/hr.min.mjs +1 -1
  94. package/dist/locale/hr.mjs +1 -1
  95. package/dist/locale/hu.js +1 -1
  96. package/dist/locale/hu.min.js +1 -1
  97. package/dist/locale/hu.min.mjs +1 -1
  98. package/dist/locale/hu.mjs +1 -1
  99. package/dist/locale/hy-am.js +1 -1
  100. package/dist/locale/hy-am.min.js +1 -1
  101. package/dist/locale/hy-am.min.mjs +1 -1
  102. package/dist/locale/hy-am.mjs +1 -1
  103. package/dist/locale/id.js +1 -1
  104. package/dist/locale/id.min.js +1 -1
  105. package/dist/locale/id.min.mjs +1 -1
  106. package/dist/locale/id.mjs +1 -1
  107. package/dist/locale/it.js +1 -1
  108. package/dist/locale/it.min.js +1 -1
  109. package/dist/locale/it.min.mjs +1 -1
  110. package/dist/locale/it.mjs +1 -1
  111. package/dist/locale/ja.js +1 -1
  112. package/dist/locale/ja.min.js +1 -1
  113. package/dist/locale/ja.min.mjs +1 -1
  114. package/dist/locale/ja.mjs +1 -1
  115. package/dist/locale/kk.js +1 -1
  116. package/dist/locale/kk.min.js +1 -1
  117. package/dist/locale/kk.min.mjs +1 -1
  118. package/dist/locale/kk.mjs +1 -1
  119. package/dist/locale/km.js +1 -1
  120. package/dist/locale/km.min.js +1 -1
  121. package/dist/locale/km.min.mjs +1 -1
  122. package/dist/locale/km.mjs +1 -1
  123. package/dist/locale/ko.js +1 -1
  124. package/dist/locale/ko.min.js +1 -1
  125. package/dist/locale/ko.min.mjs +1 -1
  126. package/dist/locale/ko.mjs +1 -1
  127. package/dist/locale/ku.js +1 -1
  128. package/dist/locale/ku.min.js +1 -1
  129. package/dist/locale/ku.min.mjs +1 -1
  130. package/dist/locale/ku.mjs +1 -1
  131. package/dist/locale/ky.js +1 -1
  132. package/dist/locale/ky.min.js +1 -1
  133. package/dist/locale/ky.min.mjs +1 -1
  134. package/dist/locale/ky.mjs +1 -1
  135. package/dist/locale/lt.js +1 -1
  136. package/dist/locale/lt.min.js +1 -1
  137. package/dist/locale/lt.min.mjs +1 -1
  138. package/dist/locale/lt.mjs +1 -1
  139. package/dist/locale/lv.js +1 -1
  140. package/dist/locale/lv.min.js +1 -1
  141. package/dist/locale/lv.min.mjs +1 -1
  142. package/dist/locale/lv.mjs +1 -1
  143. package/dist/locale/mg.js +1 -1
  144. package/dist/locale/mg.min.js +1 -1
  145. package/dist/locale/mg.min.mjs +1 -1
  146. package/dist/locale/mg.mjs +1 -1
  147. package/dist/locale/mn.js +1 -1
  148. package/dist/locale/mn.min.js +1 -1
  149. package/dist/locale/mn.min.mjs +1 -1
  150. package/dist/locale/mn.mjs +1 -1
  151. package/dist/locale/ms.js +1 -1
  152. package/dist/locale/ms.min.js +1 -1
  153. package/dist/locale/ms.min.mjs +1 -1
  154. package/dist/locale/ms.mjs +1 -1
  155. package/dist/locale/my.js +1 -1
  156. package/dist/locale/my.min.js +1 -1
  157. package/dist/locale/my.min.mjs +1 -1
  158. package/dist/locale/my.mjs +1 -1
  159. package/dist/locale/nb-no.js +1 -1
  160. package/dist/locale/nb-no.min.js +1 -1
  161. package/dist/locale/nb-no.min.mjs +1 -1
  162. package/dist/locale/nb-no.mjs +1 -1
  163. package/dist/locale/nl.js +1 -1
  164. package/dist/locale/nl.min.js +1 -1
  165. package/dist/locale/nl.min.mjs +1 -1
  166. package/dist/locale/nl.mjs +1 -1
  167. package/dist/locale/pa.js +1 -1
  168. package/dist/locale/pa.min.js +1 -1
  169. package/dist/locale/pa.min.mjs +1 -1
  170. package/dist/locale/pa.mjs +1 -1
  171. package/dist/locale/pl.js +1 -1
  172. package/dist/locale/pl.min.js +1 -1
  173. package/dist/locale/pl.min.mjs +1 -1
  174. package/dist/locale/pl.mjs +1 -1
  175. package/dist/locale/pt-br.js +1 -1
  176. package/dist/locale/pt-br.min.js +1 -1
  177. package/dist/locale/pt-br.min.mjs +1 -1
  178. package/dist/locale/pt-br.mjs +1 -1
  179. package/dist/locale/pt.js +1 -1
  180. package/dist/locale/pt.min.js +1 -1
  181. package/dist/locale/pt.min.mjs +1 -1
  182. package/dist/locale/pt.mjs +1 -1
  183. package/dist/locale/ro.js +1 -1
  184. package/dist/locale/ro.min.js +1 -1
  185. package/dist/locale/ro.min.mjs +1 -1
  186. package/dist/locale/ro.mjs +1 -1
  187. package/dist/locale/ru.js +1 -1
  188. package/dist/locale/ru.min.js +1 -1
  189. package/dist/locale/ru.min.mjs +1 -1
  190. package/dist/locale/ru.mjs +1 -1
  191. package/dist/locale/sk.js +1 -1
  192. package/dist/locale/sk.min.js +1 -1
  193. package/dist/locale/sk.min.mjs +1 -1
  194. package/dist/locale/sk.mjs +1 -1
  195. package/dist/locale/sl.js +1 -1
  196. package/dist/locale/sl.min.js +1 -1
  197. package/dist/locale/sl.min.mjs +1 -1
  198. package/dist/locale/sl.mjs +1 -1
  199. package/dist/locale/sr.js +1 -1
  200. package/dist/locale/sr.min.js +1 -1
  201. package/dist/locale/sr.min.mjs +1 -1
  202. package/dist/locale/sr.mjs +1 -1
  203. package/dist/locale/sv.js +1 -1
  204. package/dist/locale/sv.min.js +1 -1
  205. package/dist/locale/sv.min.mjs +1 -1
  206. package/dist/locale/sv.mjs +1 -1
  207. package/dist/locale/sw.js +1 -1
  208. package/dist/locale/sw.min.js +1 -1
  209. package/dist/locale/sw.min.mjs +1 -1
  210. package/dist/locale/sw.mjs +1 -1
  211. package/dist/locale/ta.js +1 -1
  212. package/dist/locale/ta.min.js +1 -1
  213. package/dist/locale/ta.min.mjs +1 -1
  214. package/dist/locale/ta.mjs +1 -1
  215. package/dist/locale/th.js +1 -1
  216. package/dist/locale/th.min.js +1 -1
  217. package/dist/locale/th.min.mjs +1 -1
  218. package/dist/locale/th.mjs +1 -1
  219. package/dist/locale/tk.js +1 -1
  220. package/dist/locale/tk.min.js +1 -1
  221. package/dist/locale/tk.min.mjs +1 -1
  222. package/dist/locale/tk.mjs +1 -1
  223. package/dist/locale/tr.js +1 -1
  224. package/dist/locale/tr.min.js +1 -1
  225. package/dist/locale/tr.min.mjs +1 -1
  226. package/dist/locale/tr.mjs +1 -1
  227. package/dist/locale/ug-cn.js +1 -1
  228. package/dist/locale/ug-cn.min.js +1 -1
  229. package/dist/locale/ug-cn.min.mjs +1 -1
  230. package/dist/locale/ug-cn.mjs +1 -1
  231. package/dist/locale/uk.js +1 -1
  232. package/dist/locale/uk.min.js +1 -1
  233. package/dist/locale/uk.min.mjs +1 -1
  234. package/dist/locale/uk.mjs +1 -1
  235. package/dist/locale/uz-uz.js +1 -1
  236. package/dist/locale/uz-uz.min.js +1 -1
  237. package/dist/locale/uz-uz.min.mjs +1 -1
  238. package/dist/locale/uz-uz.mjs +1 -1
  239. package/dist/locale/vi.js +1 -1
  240. package/dist/locale/vi.min.js +1 -1
  241. package/dist/locale/vi.min.mjs +1 -1
  242. package/dist/locale/vi.mjs +1 -1
  243. package/dist/locale/zh-cn.js +1 -1
  244. package/dist/locale/zh-cn.min.js +1 -1
  245. package/dist/locale/zh-cn.min.mjs +1 -1
  246. package/dist/locale/zh-cn.mjs +1 -1
  247. package/dist/locale/zh-tw.js +1 -1
  248. package/dist/locale/zh-tw.min.js +1 -1
  249. package/dist/locale/zh-tw.min.mjs +1 -1
  250. package/dist/locale/zh-tw.mjs +1 -1
  251. package/es/components/affix/index.mjs +2 -2
  252. package/es/components/affix/src/affix.mjs +25 -118
  253. package/es/components/affix/src/affix.mjs.map +1 -1
  254. package/es/components/affix/src/affix2.mjs +118 -25
  255. package/es/components/affix/src/affix2.mjs.map +1 -1
  256. package/es/components/autocomplete/index.mjs +2 -2
  257. package/es/components/autocomplete/src/autocomplete.mjs +364 -79
  258. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  259. package/es/components/autocomplete/src/autocomplete2.mjs +79 -364
  260. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  261. package/es/components/breadcrumb/index.mjs +2 -2
  262. package/es/components/breadcrumb/src/breadcrumb.mjs +37 -10
  263. package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  264. package/es/components/breadcrumb/src/breadcrumb2.mjs +10 -37
  265. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  266. package/es/components/check-tag/index.mjs +2 -2
  267. package/es/components/check-tag/src/check-tag.mjs +14 -38
  268. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  269. package/es/components/check-tag/src/check-tag2.mjs +38 -14
  270. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  271. package/es/components/checkbox/index.mjs +2 -2
  272. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  273. package/es/components/checkbox/src/checkbox.mjs +59 -119
  274. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  275. package/es/components/checkbox/src/checkbox2.mjs +119 -59
  276. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  277. package/es/components/col/index.mjs +2 -2
  278. package/es/components/col/src/col.mjs +43 -64
  279. package/es/components/col/src/col.mjs.map +1 -1
  280. package/es/components/col/src/col2.mjs +64 -43
  281. package/es/components/col/src/col2.mjs.map +1 -1
  282. package/es/components/collection/index.mjs +1 -1
  283. package/es/components/collection/src/collection.mjs +62 -10
  284. package/es/components/collection/src/collection.mjs.map +1 -1
  285. package/es/components/collection/src/collection2.mjs +10 -62
  286. package/es/components/collection/src/collection2.mjs.map +1 -1
  287. package/es/components/countdown/index.mjs +2 -2
  288. package/es/components/countdown/src/countdown.mjs +22 -79
  289. package/es/components/countdown/src/countdown.mjs.map +1 -1
  290. package/es/components/countdown/src/countdown2.mjs +79 -22
  291. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  292. package/es/components/descriptions/src/description2.mjs +1 -1
  293. package/es/components/descriptions/src/descriptions-row.mjs +63 -6
  294. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  295. package/es/components/descriptions/src/descriptions-row2.mjs +6 -63
  296. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  297. package/es/components/divider/index.mjs +2 -2
  298. package/es/components/divider/src/divider.mjs +16 -34
  299. package/es/components/divider/src/divider.mjs.map +1 -1
  300. package/es/components/divider/src/divider2.mjs +34 -16
  301. package/es/components/divider/src/divider2.mjs.map +1 -1
  302. package/es/components/drawer/index.mjs +2 -2
  303. package/es/components/drawer/src/drawer.mjs +26 -178
  304. package/es/components/drawer/src/drawer.mjs.map +1 -1
  305. package/es/components/drawer/src/drawer2.mjs +178 -26
  306. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  307. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  308. package/es/components/dropdown/src/dropdown.mjs +1 -1
  309. package/es/components/form/index.mjs +4 -4
  310. package/es/components/form/src/form-item.mjs +47 -319
  311. package/es/components/form/src/form-item.mjs.map +1 -1
  312. package/es/components/form/src/form-item2.mjs +319 -47
  313. package/es/components/form/src/form-item2.mjs.map +1 -1
  314. package/es/components/form/src/form.mjs +53 -151
  315. package/es/components/form/src/form.mjs.map +1 -1
  316. package/es/components/form/src/form2.mjs +151 -53
  317. package/es/components/form/src/form2.mjs.map +1 -1
  318. package/es/components/image-viewer/index.mjs +2 -2
  319. package/es/components/image-viewer/src/image-viewer.mjs +412 -45
  320. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  321. package/es/components/image-viewer/src/image-viewer2.mjs +45 -412
  322. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  323. package/es/components/index.mjs +22 -22
  324. package/es/components/input-tag/index.mjs +2 -2
  325. package/es/components/input-tag/src/input-tag.mjs +65 -215
  326. package/es/components/input-tag/src/input-tag.mjs.map +1 -1
  327. package/es/components/input-tag/src/input-tag2.mjs +215 -65
  328. package/es/components/input-tag/src/input-tag2.mjs.map +1 -1
  329. package/es/components/pagination/src/components/jumper.mjs +58 -7
  330. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  331. package/es/components/pagination/src/components/jumper2.mjs +7 -58
  332. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  333. package/es/components/pagination/src/components/sizes.mjs +71 -23
  334. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  335. package/es/components/pagination/src/components/sizes2.mjs +23 -71
  336. package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
  337. package/es/components/pagination/src/pagination.mjs +2 -2
  338. package/es/components/popper/index.mjs +2 -2
  339. package/es/components/popper/src/trigger.mjs +127 -31
  340. package/es/components/popper/src/trigger.mjs.map +1 -1
  341. package/es/components/popper/src/trigger2.mjs +31 -127
  342. package/es/components/popper/src/trigger2.mjs.map +1 -1
  343. package/es/components/radio/index.mjs +2 -2
  344. package/es/components/radio/src/radio-group.mjs +65 -34
  345. package/es/components/radio/src/radio-group.mjs.map +1 -1
  346. package/es/components/radio/src/radio-group2.mjs +34 -65
  347. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  348. package/es/components/rate/index.mjs +2 -2
  349. package/es/components/rate/src/rate.mjs +258 -83
  350. package/es/components/rate/src/rate.mjs.map +1 -1
  351. package/es/components/rate/src/rate2.mjs +83 -258
  352. package/es/components/rate/src/rate2.mjs.map +1 -1
  353. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  354. package/es/components/scrollbar/index.mjs +3 -3
  355. package/es/components/scrollbar/src/bar2.mjs +1 -1
  356. package/es/components/scrollbar/src/scrollbar.mjs +170 -55
  357. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  358. package/es/components/scrollbar/src/scrollbar2.mjs +55 -170
  359. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  360. package/es/components/scrollbar/src/thumb.mjs +11 -129
  361. package/es/components/scrollbar/src/thumb.mjs.map +1 -1
  362. package/es/components/scrollbar/src/thumb2.mjs +129 -11
  363. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  364. package/es/components/skeleton/index.mjs +2 -2
  365. package/es/components/skeleton/src/skeleton-item.mjs +22 -17
  366. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  367. package/es/components/skeleton/src/skeleton-item2.mjs +17 -22
  368. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  369. package/es/components/skeleton/src/skeleton2.mjs +1 -1
  370. package/es/components/slider/src/button.mjs +19 -89
  371. package/es/components/slider/src/button.mjs.map +1 -1
  372. package/es/components/slider/src/button2.mjs +89 -19
  373. package/es/components/slider/src/button2.mjs.map +1 -1
  374. package/es/components/slider/src/slider2.mjs +1 -1
  375. package/es/components/tooltip/src/trigger.mjs +1 -1
  376. package/es/components/tooltip/src/trigger2.mjs +1 -1
  377. package/es/components/upload/index.mjs +1 -1
  378. package/es/components/upload/src/upload-content2.mjs +1 -1
  379. package/es/components/upload/src/upload-dragger.mjs +47 -10
  380. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  381. package/es/components/upload/src/upload-dragger2.mjs +10 -47
  382. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  383. package/es/components/watermark/index.mjs +2 -2
  384. package/es/components/watermark/src/watermark.mjs +27 -210
  385. package/es/components/watermark/src/watermark.mjs.map +1 -1
  386. package/es/components/watermark/src/watermark2.mjs +210 -27
  387. package/es/components/watermark/src/watermark2.mjs.map +1 -1
  388. package/es/index.mjs +22 -22
  389. package/es/version.d.ts +1 -1
  390. package/es/version.mjs +1 -1
  391. package/es/version.mjs.map +1 -1
  392. package/lib/components/affix/index.js +2 -2
  393. package/lib/components/affix/src/affix.js +26 -118
  394. package/lib/components/affix/src/affix.js.map +1 -1
  395. package/lib/components/affix/src/affix2.js +118 -26
  396. package/lib/components/affix/src/affix2.js.map +1 -1
  397. package/lib/components/autocomplete/index.js +2 -2
  398. package/lib/components/autocomplete/src/autocomplete.js +363 -79
  399. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  400. package/lib/components/autocomplete/src/autocomplete2.js +79 -363
  401. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  402. package/lib/components/breadcrumb/index.js +2 -2
  403. package/lib/components/breadcrumb/src/breadcrumb.js +37 -10
  404. package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
  405. package/lib/components/breadcrumb/src/breadcrumb2.js +10 -37
  406. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  407. package/lib/components/check-tag/index.js +2 -2
  408. package/lib/components/check-tag/src/check-tag.js +15 -38
  409. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  410. package/lib/components/check-tag/src/check-tag2.js +38 -15
  411. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  412. package/lib/components/checkbox/index.js +2 -2
  413. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  414. package/lib/components/checkbox/src/checkbox.js +60 -119
  415. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  416. package/lib/components/checkbox/src/checkbox2.js +119 -60
  417. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  418. package/lib/components/col/index.js +2 -2
  419. package/lib/components/col/src/col.js +43 -64
  420. package/lib/components/col/src/col.js.map +1 -1
  421. package/lib/components/col/src/col2.js +64 -43
  422. package/lib/components/col/src/col2.js.map +1 -1
  423. package/lib/components/collection/index.js +1 -1
  424. package/lib/components/collection/src/collection.js +62 -9
  425. package/lib/components/collection/src/collection.js.map +1 -1
  426. package/lib/components/collection/src/collection2.js +9 -62
  427. package/lib/components/collection/src/collection2.js.map +1 -1
  428. package/lib/components/countdown/index.js +2 -2
  429. package/lib/components/countdown/src/countdown.js +23 -79
  430. package/lib/components/countdown/src/countdown.js.map +1 -1
  431. package/lib/components/countdown/src/countdown2.js +79 -23
  432. package/lib/components/countdown/src/countdown2.js.map +1 -1
  433. package/lib/components/descriptions/src/description2.js +1 -1
  434. package/lib/components/descriptions/src/descriptions-row.js +63 -6
  435. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  436. package/lib/components/descriptions/src/descriptions-row2.js +6 -63
  437. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  438. package/lib/components/divider/index.js +2 -2
  439. package/lib/components/divider/src/divider.js +16 -34
  440. package/lib/components/divider/src/divider.js.map +1 -1
  441. package/lib/components/divider/src/divider2.js +34 -16
  442. package/lib/components/divider/src/divider2.js.map +1 -1
  443. package/lib/components/drawer/index.js +2 -2
  444. package/lib/components/drawer/src/drawer.js +27 -178
  445. package/lib/components/drawer/src/drawer.js.map +1 -1
  446. package/lib/components/drawer/src/drawer2.js +178 -27
  447. package/lib/components/drawer/src/drawer2.js.map +1 -1
  448. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  449. package/lib/components/dropdown/src/dropdown.js +1 -1
  450. package/lib/components/form/index.js +4 -4
  451. package/lib/components/form/src/form-item.js +48 -323
  452. package/lib/components/form/src/form-item.js.map +1 -1
  453. package/lib/components/form/src/form-item2.js +323 -48
  454. package/lib/components/form/src/form-item2.js.map +1 -1
  455. package/lib/components/form/src/form.js +54 -150
  456. package/lib/components/form/src/form.js.map +1 -1
  457. package/lib/components/form/src/form2.js +150 -54
  458. package/lib/components/form/src/form2.js.map +1 -1
  459. package/lib/components/image-viewer/index.js +2 -2
  460. package/lib/components/image-viewer/src/image-viewer.js +412 -46
  461. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  462. package/lib/components/image-viewer/src/image-viewer2.js +46 -412
  463. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  464. package/lib/components/index.js +22 -22
  465. package/lib/components/input-tag/index.js +2 -2
  466. package/lib/components/input-tag/src/input-tag.js +65 -214
  467. package/lib/components/input-tag/src/input-tag.js.map +1 -1
  468. package/lib/components/input-tag/src/input-tag2.js +214 -65
  469. package/lib/components/input-tag/src/input-tag2.js.map +1 -1
  470. package/lib/components/pagination/src/components/jumper.js +58 -7
  471. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  472. package/lib/components/pagination/src/components/jumper2.js +7 -58
  473. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  474. package/lib/components/pagination/src/components/sizes.js +71 -23
  475. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  476. package/lib/components/pagination/src/components/sizes2.js +23 -71
  477. package/lib/components/pagination/src/components/sizes2.js.map +1 -1
  478. package/lib/components/pagination/src/pagination.js +2 -2
  479. package/lib/components/popper/index.js +2 -2
  480. package/lib/components/popper/src/trigger.js +127 -32
  481. package/lib/components/popper/src/trigger.js.map +1 -1
  482. package/lib/components/popper/src/trigger2.js +32 -127
  483. package/lib/components/popper/src/trigger2.js.map +1 -1
  484. package/lib/components/radio/index.js +2 -2
  485. package/lib/components/radio/src/radio-group.js +65 -35
  486. package/lib/components/radio/src/radio-group.js.map +1 -1
  487. package/lib/components/radio/src/radio-group2.js +35 -65
  488. package/lib/components/radio/src/radio-group2.js.map +1 -1
  489. package/lib/components/rate/index.js +2 -2
  490. package/lib/components/rate/src/rate.js +257 -83
  491. package/lib/components/rate/src/rate.js.map +1 -1
  492. package/lib/components/rate/src/rate2.js +83 -257
  493. package/lib/components/rate/src/rate2.js.map +1 -1
  494. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  495. package/lib/components/scrollbar/index.js +3 -3
  496. package/lib/components/scrollbar/src/bar2.js +1 -1
  497. package/lib/components/scrollbar/src/scrollbar.js +170 -56
  498. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  499. package/lib/components/scrollbar/src/scrollbar2.js +56 -170
  500. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  501. package/lib/components/scrollbar/src/thumb.js +11 -129
  502. package/lib/components/scrollbar/src/thumb.js.map +1 -1
  503. package/lib/components/scrollbar/src/thumb2.js +129 -11
  504. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  505. package/lib/components/skeleton/index.js +2 -2
  506. package/lib/components/skeleton/src/skeleton-item.js +22 -17
  507. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  508. package/lib/components/skeleton/src/skeleton-item2.js +17 -22
  509. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  510. package/lib/components/skeleton/src/skeleton2.js +1 -1
  511. package/lib/components/slider/src/button.js +20 -89
  512. package/lib/components/slider/src/button.js.map +1 -1
  513. package/lib/components/slider/src/button2.js +89 -20
  514. package/lib/components/slider/src/button2.js.map +1 -1
  515. package/lib/components/slider/src/slider2.js +1 -1
  516. package/lib/components/tooltip/src/trigger.js +1 -1
  517. package/lib/components/tooltip/src/trigger2.js +1 -1
  518. package/lib/components/upload/index.js +1 -1
  519. package/lib/components/upload/src/upload-content2.js +1 -1
  520. package/lib/components/upload/src/upload-dragger.js +47 -11
  521. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  522. package/lib/components/upload/src/upload-dragger2.js +11 -47
  523. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  524. package/lib/components/watermark/index.js +2 -2
  525. package/lib/components/watermark/src/watermark.js +27 -210
  526. package/lib/components/watermark/src/watermark.js.map +1 -1
  527. package/lib/components/watermark/src/watermark2.js +210 -27
  528. package/lib/components/watermark/src/watermark2.js.map +1 -1
  529. package/lib/index.js +22 -22
  530. package/lib/version.d.ts +1 -1
  531. package/lib/version.js +1 -1
  532. package/lib/version.js.map +1 -1
  533. package/package.json +2 -2
  534. package/web-types.json +1 -1
@@ -1,262 +1,87 @@
1
- import { defineComponent, inject, ref, computed, markRaw, watch, openBlock, createElementBlock, unref, normalizeClass, normalizeStyle, Fragment, renderList, createVNode, withCtx, withDirectives, createBlock, resolveDynamicComponent, vShow, createCommentVNode, toDisplayString } from 'vue';
2
- import { ElIcon } from '../../icon/index.mjs';
3
- import { rateProps, rateEmits } from './rate.mjs';
4
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
5
- import { formContextKey, formItemContextKey } from '../../form/src/constants.mjs';
6
- import { useFormSize } from '../../form/src/hooks/use-form-common-props.mjs';
7
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
8
- import { useFormItemInputId } from '../../form/src/hooks/use-form-item.mjs';
9
- import { isArray, isObject, isString } from '@vue/shared';
10
- import { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
11
- import { EVENT_CODE } from '../../../constants/aria.mjs';
12
- import { hasClass } from '../../../utils/dom/style.mjs';
1
+ import { StarFilled, Star } from '@element-plus/icons-vue';
2
+ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
3
+ import { mutable } from '../../../utils/typescript.mjs';
4
+ import { iconPropType } from '../../../utils/vue/icon.mjs';
5
+ import { useSizeProp } from '../../../hooks/use-size/index.mjs';
6
+ import { useAriaProps } from '../../../hooks/use-aria/index.mjs';
7
+ import { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
8
+ import { isNumber } from '../../../utils/types.mjs';
13
9
 
14
- const __default__ = defineComponent({
15
- name: "ElRate"
10
+ const rateProps = buildProps({
11
+ modelValue: {
12
+ type: Number,
13
+ default: 0
14
+ },
15
+ id: {
16
+ type: String,
17
+ default: void 0
18
+ },
19
+ lowThreshold: {
20
+ type: Number,
21
+ default: 2
22
+ },
23
+ highThreshold: {
24
+ type: Number,
25
+ default: 4
26
+ },
27
+ max: {
28
+ type: Number,
29
+ default: 5
30
+ },
31
+ colors: {
32
+ type: definePropType([Array, Object]),
33
+ default: () => mutable(["", "", ""])
34
+ },
35
+ voidColor: {
36
+ type: String,
37
+ default: ""
38
+ },
39
+ disabledVoidColor: {
40
+ type: String,
41
+ default: ""
42
+ },
43
+ icons: {
44
+ type: definePropType([Array, Object]),
45
+ default: () => [StarFilled, StarFilled, StarFilled]
46
+ },
47
+ voidIcon: {
48
+ type: iconPropType,
49
+ default: () => Star
50
+ },
51
+ disabledVoidIcon: {
52
+ type: iconPropType,
53
+ default: () => StarFilled
54
+ },
55
+ disabled: Boolean,
56
+ allowHalf: Boolean,
57
+ showText: Boolean,
58
+ showScore: Boolean,
59
+ textColor: {
60
+ type: String,
61
+ default: ""
62
+ },
63
+ texts: {
64
+ type: definePropType(Array),
65
+ default: () => mutable([
66
+ "Extremely bad",
67
+ "Disappointed",
68
+ "Fair",
69
+ "Satisfied",
70
+ "Surprise"
71
+ ])
72
+ },
73
+ scoreTemplate: {
74
+ type: String,
75
+ default: "{value}"
76
+ },
77
+ size: useSizeProp,
78
+ clearable: Boolean,
79
+ ...useAriaProps(["ariaLabel"])
16
80
  });
17
- const _sfc_main = /* @__PURE__ */ defineComponent({
18
- ...__default__,
19
- props: rateProps,
20
- emits: rateEmits,
21
- setup(__props, { expose, emit }) {
22
- const props = __props;
23
- function getValueFromMap(value, map) {
24
- const isExcludedObject = (val) => isObject(val);
25
- const matchedKeys = Object.keys(map).map((key) => +key).filter((key) => {
26
- const val = map[key];
27
- const excluded = isExcludedObject(val) ? val.excluded : false;
28
- return excluded ? value < key : value <= key;
29
- }).sort((a, b) => a - b);
30
- const matchedValue = map[matchedKeys[0]];
31
- return isExcludedObject(matchedValue) && matchedValue.value || matchedValue;
32
- }
33
- const formContext = inject(formContextKey, void 0);
34
- const formItemContext = inject(formItemContextKey, void 0);
35
- const rateSize = useFormSize();
36
- const ns = useNamespace("rate");
37
- const { inputId, isLabeledByFormItem } = useFormItemInputId(props, {
38
- formItemContext
39
- });
40
- const currentValue = ref(props.modelValue);
41
- const hoverIndex = ref(-1);
42
- const pointerAtLeftHalf = ref(true);
43
- const rateClasses = computed(() => [ns.b(), ns.m(rateSize.value)]);
44
- const rateDisabled = computed(() => props.disabled || (formContext == null ? void 0 : formContext.disabled));
45
- const rateStyles = computed(() => {
46
- return ns.cssVarBlock({
47
- "void-color": props.voidColor,
48
- "disabled-void-color": props.disabledVoidColor,
49
- "fill-color": activeColor.value
50
- });
51
- });
52
- const text = computed(() => {
53
- let result = "";
54
- if (props.showScore) {
55
- result = props.scoreTemplate.replace(/\{\s*value\s*\}/, rateDisabled.value ? `${props.modelValue}` : `${currentValue.value}`);
56
- } else if (props.showText) {
57
- result = props.texts[Math.ceil(currentValue.value) - 1];
58
- }
59
- return result;
60
- });
61
- const valueDecimal = computed(() => props.modelValue * 100 - Math.floor(props.modelValue) * 100);
62
- const colorMap = computed(() => isArray(props.colors) ? {
63
- [props.lowThreshold]: props.colors[0],
64
- [props.highThreshold]: { value: props.colors[1], excluded: true },
65
- [props.max]: props.colors[2]
66
- } : props.colors);
67
- const activeColor = computed(() => {
68
- const color = getValueFromMap(currentValue.value, colorMap.value);
69
- return isObject(color) ? "" : color;
70
- });
71
- const decimalStyle = computed(() => {
72
- let width = "";
73
- if (rateDisabled.value) {
74
- width = `${valueDecimal.value}%`;
75
- } else if (props.allowHalf) {
76
- width = "50%";
77
- }
78
- return {
79
- color: activeColor.value,
80
- width
81
- };
82
- });
83
- const componentMap = computed(() => {
84
- let icons = isArray(props.icons) ? [...props.icons] : { ...props.icons };
85
- icons = markRaw(icons);
86
- return isArray(icons) ? {
87
- [props.lowThreshold]: icons[0],
88
- [props.highThreshold]: {
89
- value: icons[1],
90
- excluded: true
91
- },
92
- [props.max]: icons[2]
93
- } : icons;
94
- });
95
- const decimalIconComponent = computed(() => getValueFromMap(props.modelValue, componentMap.value));
96
- const voidComponent = computed(() => rateDisabled.value ? isString(props.disabledVoidIcon) ? props.disabledVoidIcon : markRaw(props.disabledVoidIcon) : isString(props.voidIcon) ? props.voidIcon : markRaw(props.voidIcon));
97
- const activeComponent = computed(() => getValueFromMap(currentValue.value, componentMap.value));
98
- function showDecimalIcon(item) {
99
- const showWhenDisabled = rateDisabled.value && valueDecimal.value > 0 && item - 1 < props.modelValue && item > props.modelValue;
100
- const showWhenAllowHalf = props.allowHalf && pointerAtLeftHalf.value && item - 0.5 <= currentValue.value && item > currentValue.value;
101
- return showWhenDisabled || showWhenAllowHalf;
102
- }
103
- function emitValue(value) {
104
- if (props.clearable && value === props.modelValue) {
105
- value = 0;
106
- }
107
- emit(UPDATE_MODEL_EVENT, value);
108
- if (props.modelValue !== value) {
109
- emit("change", value);
110
- }
111
- }
112
- function selectValue(value) {
113
- if (rateDisabled.value) {
114
- return;
115
- }
116
- if (props.allowHalf && pointerAtLeftHalf.value) {
117
- emitValue(currentValue.value);
118
- } else {
119
- emitValue(value);
120
- }
121
- }
122
- function handleKey(e) {
123
- if (rateDisabled.value) {
124
- return;
125
- }
126
- let _currentValue = currentValue.value;
127
- const code = e.code;
128
- if (code === EVENT_CODE.up || code === EVENT_CODE.right) {
129
- if (props.allowHalf) {
130
- _currentValue += 0.5;
131
- } else {
132
- _currentValue += 1;
133
- }
134
- e.stopPropagation();
135
- e.preventDefault();
136
- } else if (code === EVENT_CODE.left || code === EVENT_CODE.down) {
137
- if (props.allowHalf) {
138
- _currentValue -= 0.5;
139
- } else {
140
- _currentValue -= 1;
141
- }
142
- e.stopPropagation();
143
- e.preventDefault();
144
- }
145
- _currentValue = _currentValue < 0 ? 0 : _currentValue;
146
- _currentValue = _currentValue > props.max ? props.max : _currentValue;
147
- emit(UPDATE_MODEL_EVENT, _currentValue);
148
- emit("change", _currentValue);
149
- return _currentValue;
150
- }
151
- function setCurrentValue(value, event) {
152
- if (rateDisabled.value) {
153
- return;
154
- }
155
- if (props.allowHalf && event) {
156
- let target = event.target;
157
- if (hasClass(target, ns.e("item"))) {
158
- target = target.querySelector(`.${ns.e("icon")}`);
159
- }
160
- if (target.clientWidth === 0 || hasClass(target, ns.e("decimal"))) {
161
- target = target.parentNode;
162
- }
163
- pointerAtLeftHalf.value = event.offsetX * 2 <= target.clientWidth;
164
- currentValue.value = pointerAtLeftHalf.value ? value - 0.5 : value;
165
- } else {
166
- currentValue.value = value;
167
- }
168
- hoverIndex.value = value;
169
- }
170
- function resetCurrentValue() {
171
- if (rateDisabled.value) {
172
- return;
173
- }
174
- if (props.allowHalf) {
175
- pointerAtLeftHalf.value = props.modelValue !== Math.floor(props.modelValue);
176
- }
177
- currentValue.value = props.modelValue;
178
- hoverIndex.value = -1;
179
- }
180
- watch(() => props.modelValue, (val) => {
181
- currentValue.value = val;
182
- pointerAtLeftHalf.value = props.modelValue !== Math.floor(props.modelValue);
183
- });
184
- if (!props.modelValue) {
185
- emit(UPDATE_MODEL_EVENT, 0);
186
- }
187
- expose({
188
- setCurrentValue,
189
- resetCurrentValue
190
- });
191
- return (_ctx, _cache) => {
192
- var _a;
193
- return openBlock(), createElementBlock("div", {
194
- id: unref(inputId),
195
- class: normalizeClass([unref(rateClasses), unref(ns).is("disabled", unref(rateDisabled))]),
196
- role: "slider",
197
- "aria-label": !unref(isLabeledByFormItem) ? _ctx.ariaLabel || "rating" : void 0,
198
- "aria-labelledby": unref(isLabeledByFormItem) ? (_a = unref(formItemContext)) == null ? void 0 : _a.labelId : void 0,
199
- "aria-valuenow": currentValue.value,
200
- "aria-valuetext": unref(text) || void 0,
201
- "aria-valuemin": "0",
202
- "aria-valuemax": _ctx.max,
203
- tabindex: "0",
204
- style: normalizeStyle(unref(rateStyles)),
205
- onKeydown: handleKey
206
- }, [
207
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.max, (item, key) => {
208
- return openBlock(), createElementBlock("span", {
209
- key,
210
- class: normalizeClass(unref(ns).e("item")),
211
- onMousemove: ($event) => setCurrentValue(item, $event),
212
- onMouseleave: resetCurrentValue,
213
- onClick: ($event) => selectValue(item)
214
- }, [
215
- createVNode(unref(ElIcon), {
216
- class: normalizeClass([
217
- unref(ns).e("icon"),
218
- { hover: hoverIndex.value === item },
219
- unref(ns).is("active", item <= currentValue.value)
220
- ])
221
- }, {
222
- default: withCtx(() => [
223
- !showDecimalIcon(item) ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
224
- withDirectives((openBlock(), createBlock(resolveDynamicComponent(unref(activeComponent)), null, null, 512)), [
225
- [vShow, item <= currentValue.value]
226
- ]),
227
- withDirectives((openBlock(), createBlock(resolveDynamicComponent(unref(voidComponent)), null, null, 512)), [
228
- [vShow, !(item <= currentValue.value)]
229
- ])
230
- ], 64)) : createCommentVNode("v-if", true),
231
- showDecimalIcon(item) ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
232
- (openBlock(), createBlock(resolveDynamicComponent(unref(voidComponent)), {
233
- class: normalizeClass([unref(ns).em("decimal", "box")])
234
- }, null, 8, ["class"])),
235
- createVNode(unref(ElIcon), {
236
- style: normalizeStyle(unref(decimalStyle)),
237
- class: normalizeClass([unref(ns).e("icon"), unref(ns).e("decimal")])
238
- }, {
239
- default: withCtx(() => [
240
- (openBlock(), createBlock(resolveDynamicComponent(unref(decimalIconComponent))))
241
- ]),
242
- _: 1
243
- }, 8, ["style", "class"])
244
- ], 64)) : createCommentVNode("v-if", true)
245
- ]),
246
- _: 2
247
- }, 1032, ["class"])
248
- ], 42, ["onMousemove", "onClick"]);
249
- }), 128)),
250
- _ctx.showText || _ctx.showScore ? (openBlock(), createElementBlock("span", {
251
- key: 0,
252
- class: normalizeClass(unref(ns).e("text")),
253
- style: normalizeStyle({ color: _ctx.textColor })
254
- }, toDisplayString(unref(text)), 7)) : createCommentVNode("v-if", true)
255
- ], 46, ["id", "aria-label", "aria-labelledby", "aria-valuenow", "aria-valuetext", "aria-valuemax"]);
256
- };
257
- }
258
- });
259
- var Rate = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "rate.vue"]]);
81
+ const rateEmits = {
82
+ [CHANGE_EVENT]: (value) => isNumber(value),
83
+ [UPDATE_MODEL_EVENT]: (value) => isNumber(value)
84
+ };
260
85
 
261
- export { Rate as default };
86
+ export { rateEmits, rateProps };
262
87
  //# sourceMappingURL=rate2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"rate2.mjs","sources":["../../../../../../packages/components/rate/src/rate.vue"],"sourcesContent":["<template>\n <div\n :id=\"inputId\"\n :class=\"[rateClasses, ns.is('disabled', rateDisabled)]\"\n role=\"slider\"\n :aria-label=\"!isLabeledByFormItem ? ariaLabel || 'rating' : undefined\"\n :aria-labelledby=\"\n isLabeledByFormItem ? formItemContext?.labelId : undefined\n \"\n :aria-valuenow=\"currentValue\"\n :aria-valuetext=\"text || undefined\"\n aria-valuemin=\"0\"\n :aria-valuemax=\"max\"\n tabindex=\"0\"\n :style=\"rateStyles\"\n @keydown=\"handleKey\"\n >\n <span\n v-for=\"(item, key) in max\"\n :key=\"key\"\n :class=\"ns.e('item')\"\n @mousemove=\"setCurrentValue(item, $event)\"\n @mouseleave=\"resetCurrentValue\"\n @click=\"selectValue(item)\"\n >\n <el-icon\n :class=\"[\n ns.e('icon'),\n { hover: hoverIndex === item },\n ns.is('active', item <= currentValue),\n ]\"\n >\n <template v-if=\"!showDecimalIcon(item)\">\n <component :is=\"activeComponent\" v-show=\"item <= currentValue\" />\n <component :is=\"voidComponent\" v-show=\"!(item <= currentValue)\" />\n </template>\n <template v-if=\"showDecimalIcon(item)\">\n <component :is=\"voidComponent\" :class=\"[ns.em('decimal', 'box')]\" />\n <el-icon\n :style=\"decimalStyle\"\n :class=\"[ns.e('icon'), ns.e('decimal')]\"\n >\n <component :is=\"decimalIconComponent\" />\n </el-icon>\n </template>\n </el-icon>\n </span>\n <span\n v-if=\"showText || showScore\"\n :class=\"ns.e('text')\"\n :style=\"{ color: textColor }\"\n >\n {{ text }}\n </span>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, inject, markRaw, ref, watch } from 'vue'\nimport { EVENT_CODE, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { hasClass, isArray, isObject, isString } from '@element-plus/utils'\nimport {\n formContextKey,\n formItemContextKey,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { rateEmits, rateProps } from './rate'\nimport type { CSSProperties, Component } from 'vue'\n\nfunction getValueFromMap<T>(\n value: number,\n map: Record<string, T | { excluded?: boolean; value: T }>\n) {\n const isExcludedObject = (\n val: unknown\n ): val is { excluded?: boolean } & Record<any, unknown> => isObject(val)\n\n const matchedKeys = Object.keys(map)\n .map((key) => +key)\n .filter((key) => {\n const val = map[key]\n const excluded = isExcludedObject(val) ? val.excluded : false\n return excluded ? value < key : value <= key\n })\n .sort((a, b) => a - b)\n const matchedValue = map[matchedKeys[0]]\n return (isExcludedObject(matchedValue) && matchedValue.value) || matchedValue\n}\n\ndefineOptions({\n name: 'ElRate',\n})\n\nconst props = defineProps(rateProps)\nconst emit = defineEmits(rateEmits)\n\nconst formContext = inject(formContextKey, undefined)\nconst formItemContext = inject(formItemContextKey, undefined)\nconst rateSize = useFormSize()\nconst ns = useNamespace('rate')\nconst { inputId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext,\n})\n\nconst currentValue = ref(props.modelValue)\nconst hoverIndex = ref(-1)\nconst pointerAtLeftHalf = ref(true)\n\nconst rateClasses = computed(() => [ns.b(), ns.m(rateSize.value)])\nconst rateDisabled = computed(() => props.disabled || formContext?.disabled)\nconst rateStyles = computed(() => {\n return ns.cssVarBlock({\n 'void-color': props.voidColor,\n 'disabled-void-color': props.disabledVoidColor,\n 'fill-color': activeColor.value,\n }) as CSSProperties\n})\n\nconst text = computed(() => {\n let result = ''\n if (props.showScore) {\n result = props.scoreTemplate.replace(\n /\\{\\s*value\\s*\\}/,\n rateDisabled.value ? `${props.modelValue}` : `${currentValue.value}`\n )\n } else if (props.showText) {\n result = props.texts[Math.ceil(currentValue.value) - 1]\n }\n return result\n})\nconst valueDecimal = computed(\n () => props.modelValue * 100 - Math.floor(props.modelValue) * 100\n)\nconst colorMap = computed(() =>\n isArray(props.colors)\n ? {\n [props.lowThreshold]: props.colors[0],\n [props.highThreshold]: { value: props.colors[1], excluded: true },\n [props.max]: props.colors[2],\n }\n : props.colors\n)\nconst activeColor = computed(() => {\n const color = getValueFromMap(currentValue.value, colorMap.value)\n // {value: '', excluded: true} returned\n return isObject(color) ? '' : color\n})\nconst decimalStyle = computed(() => {\n let width = ''\n if (rateDisabled.value) {\n width = `${valueDecimal.value}%`\n } else if (props.allowHalf) {\n width = '50%'\n }\n return {\n color: activeColor.value,\n width,\n }\n})\nconst componentMap = computed(() => {\n let icons = isArray(props.icons) ? [...props.icons] : { ...props.icons }\n icons = markRaw(icons) as\n | Array<string | Component>\n | Record<number, string | Component>\n return isArray(icons)\n ? {\n [props.lowThreshold]: icons[0],\n [props.highThreshold]: {\n value: icons[1],\n excluded: true,\n },\n [props.max]: icons[2],\n }\n : icons\n})\nconst decimalIconComponent = computed(() =>\n getValueFromMap(props.modelValue, componentMap.value)\n)\nconst voidComponent = computed(() =>\n rateDisabled.value\n ? isString(props.disabledVoidIcon)\n ? props.disabledVoidIcon\n : (markRaw(props.disabledVoidIcon) as Component)\n : isString(props.voidIcon)\n ? props.voidIcon\n : (markRaw(props.voidIcon) as Component)\n)\nconst activeComponent = computed(() =>\n getValueFromMap(currentValue.value, componentMap.value)\n)\n\nfunction showDecimalIcon(item: number) {\n const showWhenDisabled =\n rateDisabled.value &&\n valueDecimal.value > 0 &&\n item - 1 < props.modelValue &&\n item > props.modelValue\n const showWhenAllowHalf =\n props.allowHalf &&\n pointerAtLeftHalf.value &&\n item - 0.5 <= currentValue.value &&\n item > currentValue.value\n return showWhenDisabled || showWhenAllowHalf\n}\n\nfunction emitValue(value: number) {\n // if allow clear, and selected value is same as modelValue, reset value to 0\n if (props.clearable && value === props.modelValue) {\n value = 0\n }\n\n emit(UPDATE_MODEL_EVENT, value)\n if (props.modelValue !== value) {\n emit('change', value)\n }\n}\n\nfunction selectValue(value: number) {\n if (rateDisabled.value) {\n return\n }\n if (props.allowHalf && pointerAtLeftHalf.value) {\n emitValue(currentValue.value)\n } else {\n emitValue(value)\n }\n}\n\nfunction handleKey(e: KeyboardEvent) {\n if (rateDisabled.value) {\n return\n }\n let _currentValue = currentValue.value\n const code = e.code\n if (code === EVENT_CODE.up || code === EVENT_CODE.right) {\n if (props.allowHalf) {\n _currentValue += 0.5\n } else {\n _currentValue += 1\n }\n e.stopPropagation()\n e.preventDefault()\n } else if (code === EVENT_CODE.left || code === EVENT_CODE.down) {\n if (props.allowHalf) {\n _currentValue -= 0.5\n } else {\n _currentValue -= 1\n }\n e.stopPropagation()\n e.preventDefault()\n }\n _currentValue = _currentValue < 0 ? 0 : _currentValue\n _currentValue = _currentValue > props.max ? props.max : _currentValue\n emit(UPDATE_MODEL_EVENT, _currentValue)\n emit('change', _currentValue)\n return _currentValue\n}\n\nfunction setCurrentValue(value: number, event?: MouseEvent) {\n if (rateDisabled.value) {\n return\n }\n if (props.allowHalf && event) {\n // TODO: use cache via computed https://github.com/element-plus/element-plus/pull/5456#discussion_r786472092\n let target = event.target as HTMLElement\n if (hasClass(target, ns.e('item'))) {\n target = target.querySelector(`.${ns.e('icon')}`)!\n }\n if (target.clientWidth === 0 || hasClass(target, ns.e('decimal'))) {\n target = target.parentNode as HTMLElement\n }\n pointerAtLeftHalf.value = event.offsetX * 2 <= target.clientWidth\n currentValue.value = pointerAtLeftHalf.value ? value - 0.5 : value\n } else {\n currentValue.value = value\n }\n hoverIndex.value = value\n}\n\nfunction resetCurrentValue() {\n if (rateDisabled.value) {\n return\n }\n if (props.allowHalf) {\n pointerAtLeftHalf.value = props.modelValue !== Math.floor(props.modelValue)\n }\n currentValue.value = props.modelValue\n hoverIndex.value = -1\n}\n\nwatch(\n () => props.modelValue,\n (val) => {\n currentValue.value = val\n pointerAtLeftHalf.value = props.modelValue !== Math.floor(props.modelValue)\n }\n)\n\nif (!props.modelValue) {\n emit(UPDATE_MODEL_EVENT, 0)\n}\n\ndefineExpose({\n /** @description set current value */\n setCurrentValue,\n /** @description reset current value */\n resetCurrentValue,\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_unref","_normalizeClass","_normalizeStyle","_Fragment","_renderList"],"mappings":"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"}
1
+ {"version":3,"file":"rate2.mjs","sources":["../../../../../../packages/components/rate/src/rate.ts"],"sourcesContent":["import { Star, StarFilled } from '@element-plus/icons-vue'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport {\n buildProps,\n definePropType,\n iconPropType,\n isNumber,\n mutable,\n} from '@element-plus/utils'\nimport { useAriaProps, useSizeProp } from '@element-plus/hooks'\nimport type { Component, ExtractPropTypes } from 'vue'\nimport type Rate from './rate.vue'\n\nexport const rateProps = buildProps({\n /**\n * @description binding value\n */\n modelValue: {\n type: Number,\n default: 0,\n },\n /**\n * @description native `id` attribute\n */\n id: {\n type: String,\n default: undefined,\n },\n /**\n * @description threshold value between low and medium level. The value itself will be included in low level\n */\n lowThreshold: {\n type: Number,\n default: 2,\n },\n /**\n * @description threshold value between medium and high level. The value itself will be included in high level\n */\n highThreshold: {\n type: Number,\n default: 4,\n },\n /**\n * @description max rating score\n */\n max: {\n type: Number,\n default: 5,\n },\n /**\n * @description colors for icons. If array, it should have 3 elements, each of which corresponds with a score level, else if object, the key should be threshold value between two levels, and the value should be corresponding color\n */\n colors: {\n type: definePropType<string[] | Record<number, string>>([Array, Object]),\n default: () => mutable(['', '', ''] as const),\n },\n /**\n * @description color of unselected icons\n */\n voidColor: {\n type: String,\n default: '',\n },\n /**\n * @description color of unselected read-only icons\n */\n disabledVoidColor: {\n type: String,\n default: '',\n },\n /**\n * @description icon components. If array, it should have 3 elements, each of which corresponds with a score level, else if object, the key should be threshold value between two levels, and the value should be corresponding icon component\n */\n icons: {\n type: definePropType<\n Array<string | Component> | Record<number, string | Component>\n >([Array, Object]),\n default: () =>\n [StarFilled, StarFilled, StarFilled] as [Component, Component, Component],\n },\n /**\n * @description component of unselected icons\n */\n voidIcon: {\n type: iconPropType,\n default: () => Star as Component,\n },\n /**\n * @description component of unselected read-only icons\n */\n disabledVoidIcon: {\n type: iconPropType,\n default: () => StarFilled as Component,\n },\n /**\n * @description whether Rate is read-only\n */\n disabled: Boolean,\n /**\n * @description whether picking half start is allowed\n */\n allowHalf: Boolean,\n /**\n * @description whether to display texts\n */\n showText: Boolean,\n /**\n * @description whether to display current score. show-score and show-text cannot be true at the same time\n */\n showScore: Boolean,\n /**\n * @description color of texts\n */\n textColor: {\n type: String,\n default: '',\n },\n /**\n * @description text array\n */\n texts: {\n type: definePropType<string[]>(Array),\n default: () =>\n mutable([\n 'Extremely bad',\n 'Disappointed',\n 'Fair',\n 'Satisfied',\n 'Surprise',\n ] as const),\n },\n /**\n * @description score template\n */\n scoreTemplate: {\n type: String,\n default: '{value}',\n },\n /**\n * @description size of Rate\n */\n size: useSizeProp,\n /**\n * @description whether value can be reset to `0`\n */\n clearable: Boolean,\n ...useAriaProps(['ariaLabel']),\n} as const)\n\nexport type RateProps = ExtractPropTypes<typeof rateProps>\n\nexport const rateEmits = {\n [CHANGE_EVENT]: (value: number) => isNumber(value),\n [UPDATE_MODEL_EVENT]: (value: number) => isNumber(value),\n}\nexport type RateEmits = typeof rateEmits\n\nexport type RateInstance = InstanceType<typeof Rate>\n"],"names":[],"mappings":";;;;;;;;;AAUY,MAAC,SAAS,GAAG,UAAU,CAAC;AACpC,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACzC,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACxC,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACzC,IAAI,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;AACvD,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,YAAY;AACtB,IAAI,OAAO,EAAE,MAAM,IAAI;AACvB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,YAAY;AACtB,IAAI,OAAO,EAAE,MAAM,UAAU;AAC7B,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC;AAC3B,MAAM,eAAe;AACrB,MAAM,cAAc;AACpB,MAAM,MAAM;AACZ,MAAM,WAAW;AACjB,MAAM,UAAU;AAChB,KAAK,CAAC;AACN,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG;AACH,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,GAAG,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC;AAChC,CAAC,EAAE;AACS,MAAC,SAAS,GAAG;AACzB,EAAE,CAAC,YAAY,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC;AAC5C,EAAE,CAAC,kBAAkB,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC;AAClD;;;;"}
@@ -1,4 +1,4 @@
1
- import { createCollectionWithScope } from '../../collection/src/collection2.mjs';
1
+ import { createCollectionWithScope } from '../../collection/src/collection.mjs';
2
2
  import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
3
3
 
4
4
  const rovingFocusGroupProps = buildProps({
@@ -1,7 +1,7 @@
1
- import Scrollbar from './src/scrollbar2.mjs';
1
+ import Scrollbar from './src/scrollbar.mjs';
2
2
  export { BAR_MAP, GAP, renderThumbStyle } from './src/util.mjs';
3
- export { scrollbarEmits, scrollbarProps } from './src/scrollbar.mjs';
4
- export { thumbProps } from './src/thumb2.mjs';
3
+ export { scrollbarEmits, scrollbarProps } from './src/scrollbar2.mjs';
4
+ export { thumbProps } from './src/thumb.mjs';
5
5
  export { scrollbarContextKey } from './src/constants.mjs';
6
6
  import { withInstall } from '../../utils/vue/install.mjs';
7
7
 
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, inject, ref, openBlock, createElementBlock, Fragment, createVNode } from 'vue';
2
2
  import { GAP } from './util.mjs';
3
- import Thumb from './thumb.mjs';
3
+ import Thumb from './thumb2.mjs';
4
4
  import { barProps } from './bar.mjs';
5
5
  import { scrollbarContextKey } from './constants.mjs';
6
6
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
@@ -1,60 +1,175 @@
1
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
2
- import { useAriaProps } from '../../../hooks/use-aria/index.mjs';
1
+ import { defineComponent, ref, computed, watch, nextTick, provide, reactive, onActivated, onMounted, onUpdated, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, normalizeStyle, createBlock, resolveDynamicComponent, withCtx, renderSlot, createCommentVNode } from 'vue';
2
+ import { useResizeObserver, useEventListener } from '@vueuse/core';
3
+ import Bar from './bar2.mjs';
4
+ import { scrollbarContextKey } from './constants.mjs';
5
+ import { scrollbarProps, scrollbarEmits } from './scrollbar2.mjs';
6
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
7
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
8
+ import { addUnit } from '../../../utils/dom/style.mjs';
9
+ import { isObject } from '@vue/shared';
3
10
  import { isNumber } from '../../../utils/types.mjs';
11
+ import { debugWarn } from '../../../utils/error.mjs';
4
12
 
5
- const scrollbarProps = buildProps({
6
- height: {
7
- type: [String, Number],
8
- default: ""
9
- },
10
- maxHeight: {
11
- type: [String, Number],
12
- default: ""
13
- },
14
- native: {
15
- type: Boolean,
16
- default: false
17
- },
18
- wrapStyle: {
19
- type: definePropType([String, Object, Array]),
20
- default: ""
21
- },
22
- wrapClass: {
23
- type: [String, Array],
24
- default: ""
25
- },
26
- viewClass: {
27
- type: [String, Array],
28
- default: ""
29
- },
30
- viewStyle: {
31
- type: [String, Array, Object],
32
- default: ""
33
- },
34
- noresize: Boolean,
35
- tag: {
36
- type: String,
37
- default: "div"
38
- },
39
- always: Boolean,
40
- minSize: {
41
- type: Number,
42
- default: 20
43
- },
44
- tabindex: {
45
- type: [String, Number],
46
- default: void 0
47
- },
48
- id: String,
49
- role: String,
50
- ...useAriaProps(["ariaLabel", "ariaOrientation"])
13
+ const COMPONENT_NAME = "ElScrollbar";
14
+ const __default__ = defineComponent({
15
+ name: COMPONENT_NAME
51
16
  });
52
- const scrollbarEmits = {
53
- scroll: ({
54
- scrollTop,
55
- scrollLeft
56
- }) => [scrollTop, scrollLeft].every(isNumber)
57
- };
17
+ const _sfc_main = /* @__PURE__ */ defineComponent({
18
+ ...__default__,
19
+ props: scrollbarProps,
20
+ emits: scrollbarEmits,
21
+ setup(__props, { expose, emit }) {
22
+ const props = __props;
23
+ const ns = useNamespace("scrollbar");
24
+ let stopResizeObserver = void 0;
25
+ let stopResizeListener = void 0;
26
+ let wrapScrollTop = 0;
27
+ let wrapScrollLeft = 0;
28
+ const scrollbarRef = ref();
29
+ const wrapRef = ref();
30
+ const resizeRef = ref();
31
+ const barRef = ref();
32
+ const wrapStyle = computed(() => {
33
+ const style = {};
34
+ if (props.height)
35
+ style.height = addUnit(props.height);
36
+ if (props.maxHeight)
37
+ style.maxHeight = addUnit(props.maxHeight);
38
+ return [props.wrapStyle, style];
39
+ });
40
+ const wrapKls = computed(() => {
41
+ return [
42
+ props.wrapClass,
43
+ ns.e("wrap"),
44
+ { [ns.em("wrap", "hidden-default")]: !props.native }
45
+ ];
46
+ });
47
+ const resizeKls = computed(() => {
48
+ return [ns.e("view"), props.viewClass];
49
+ });
50
+ const handleScroll = () => {
51
+ var _a;
52
+ if (wrapRef.value) {
53
+ (_a = barRef.value) == null ? void 0 : _a.handleScroll(wrapRef.value);
54
+ wrapScrollTop = wrapRef.value.scrollTop;
55
+ wrapScrollLeft = wrapRef.value.scrollLeft;
56
+ emit("scroll", {
57
+ scrollTop: wrapRef.value.scrollTop,
58
+ scrollLeft: wrapRef.value.scrollLeft
59
+ });
60
+ }
61
+ };
62
+ function scrollTo(arg1, arg2) {
63
+ if (isObject(arg1)) {
64
+ wrapRef.value.scrollTo(arg1);
65
+ } else if (isNumber(arg1) && isNumber(arg2)) {
66
+ wrapRef.value.scrollTo(arg1, arg2);
67
+ }
68
+ }
69
+ const setScrollTop = (value) => {
70
+ if (!isNumber(value)) {
71
+ debugWarn(COMPONENT_NAME, "value must be a number");
72
+ return;
73
+ }
74
+ wrapRef.value.scrollTop = value;
75
+ };
76
+ const setScrollLeft = (value) => {
77
+ if (!isNumber(value)) {
78
+ debugWarn(COMPONENT_NAME, "value must be a number");
79
+ return;
80
+ }
81
+ wrapRef.value.scrollLeft = value;
82
+ };
83
+ const update = () => {
84
+ var _a;
85
+ (_a = barRef.value) == null ? void 0 : _a.update();
86
+ };
87
+ watch(() => props.noresize, (noresize) => {
88
+ if (noresize) {
89
+ stopResizeObserver == null ? void 0 : stopResizeObserver();
90
+ stopResizeListener == null ? void 0 : stopResizeListener();
91
+ } else {
92
+ ({ stop: stopResizeObserver } = useResizeObserver(resizeRef, update));
93
+ stopResizeListener = useEventListener("resize", update);
94
+ }
95
+ }, { immediate: true });
96
+ watch(() => [props.maxHeight, props.height], () => {
97
+ if (!props.native)
98
+ nextTick(() => {
99
+ var _a;
100
+ update();
101
+ if (wrapRef.value) {
102
+ (_a = barRef.value) == null ? void 0 : _a.handleScroll(wrapRef.value);
103
+ }
104
+ });
105
+ });
106
+ provide(scrollbarContextKey, reactive({
107
+ scrollbarElement: scrollbarRef,
108
+ wrapElement: wrapRef
109
+ }));
110
+ onActivated(() => {
111
+ if (wrapRef.value) {
112
+ wrapRef.value.scrollTop = wrapScrollTop;
113
+ wrapRef.value.scrollLeft = wrapScrollLeft;
114
+ }
115
+ });
116
+ onMounted(() => {
117
+ if (!props.native)
118
+ nextTick(() => {
119
+ update();
120
+ });
121
+ });
122
+ onUpdated(() => update());
123
+ expose({
124
+ wrapRef,
125
+ update,
126
+ scrollTo,
127
+ setScrollTop,
128
+ setScrollLeft,
129
+ handleScroll
130
+ });
131
+ return (_ctx, _cache) => {
132
+ return openBlock(), createElementBlock("div", {
133
+ ref_key: "scrollbarRef",
134
+ ref: scrollbarRef,
135
+ class: normalizeClass(unref(ns).b())
136
+ }, [
137
+ createElementVNode("div", {
138
+ ref_key: "wrapRef",
139
+ ref: wrapRef,
140
+ class: normalizeClass(unref(wrapKls)),
141
+ style: normalizeStyle(unref(wrapStyle)),
142
+ tabindex: _ctx.tabindex,
143
+ onScroll: handleScroll
144
+ }, [
145
+ (openBlock(), createBlock(resolveDynamicComponent(_ctx.tag), {
146
+ id: _ctx.id,
147
+ ref_key: "resizeRef",
148
+ ref: resizeRef,
149
+ class: normalizeClass(unref(resizeKls)),
150
+ style: normalizeStyle(_ctx.viewStyle),
151
+ role: _ctx.role,
152
+ "aria-label": _ctx.ariaLabel,
153
+ "aria-orientation": _ctx.ariaOrientation
154
+ }, {
155
+ default: withCtx(() => [
156
+ renderSlot(_ctx.$slots, "default")
157
+ ]),
158
+ _: 3
159
+ }, 8, ["id", "class", "style", "role", "aria-label", "aria-orientation"]))
160
+ ], 46, ["tabindex"]),
161
+ !_ctx.native ? (openBlock(), createBlock(Bar, {
162
+ key: 0,
163
+ ref_key: "barRef",
164
+ ref: barRef,
165
+ always: _ctx.always,
166
+ "min-size": _ctx.minSize
167
+ }, null, 8, ["always", "min-size"])) : createCommentVNode("v-if", true)
168
+ ], 2);
169
+ };
170
+ }
171
+ });
172
+ var Scrollbar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "scrollbar.vue"]]);
58
173
 
59
- export { scrollbarEmits, scrollbarProps };
174
+ export { Scrollbar as default };
60
175
  //# sourceMappingURL=scrollbar.mjs.map