element-plus 2.1.0 → 2.1.3

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 (683) hide show
  1. package/README.md +1 -1
  2. package/attributes.json +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.full.js +1394 -1498
  5. package/dist/index.full.min.js +7 -7
  6. package/dist/index.full.min.js.map +1 -1
  7. package/dist/index.full.min.mjs +11 -11
  8. package/dist/index.full.min.mjs.map +1 -1
  9. package/dist/index.full.mjs +1393 -1498
  10. package/dist/locale/af.js +1 -1
  11. package/dist/locale/af.min.js +1 -1
  12. package/dist/locale/af.min.mjs +1 -1
  13. package/dist/locale/af.mjs +1 -1
  14. package/dist/locale/ar.js +1 -1
  15. package/dist/locale/ar.min.js +1 -1
  16. package/dist/locale/ar.min.mjs +1 -1
  17. package/dist/locale/ar.mjs +1 -1
  18. package/dist/locale/bg.js +1 -1
  19. package/dist/locale/bg.min.js +1 -1
  20. package/dist/locale/bg.min.mjs +1 -1
  21. package/dist/locale/bg.mjs +1 -1
  22. package/dist/locale/bn.js +1 -1
  23. package/dist/locale/bn.min.js +1 -1
  24. package/dist/locale/bn.min.mjs +1 -1
  25. package/dist/locale/bn.mjs +1 -1
  26. package/dist/locale/ca.js +1 -1
  27. package/dist/locale/ca.min.js +1 -1
  28. package/dist/locale/ca.min.mjs +1 -1
  29. package/dist/locale/ca.mjs +1 -1
  30. package/dist/locale/cs.js +1 -1
  31. package/dist/locale/cs.min.js +1 -1
  32. package/dist/locale/cs.min.mjs +1 -1
  33. package/dist/locale/cs.mjs +1 -1
  34. package/dist/locale/da.js +1 -1
  35. package/dist/locale/da.min.js +1 -1
  36. package/dist/locale/da.min.mjs +1 -1
  37. package/dist/locale/da.mjs +1 -1
  38. package/dist/locale/de.js +1 -1
  39. package/dist/locale/de.min.js +1 -1
  40. package/dist/locale/de.min.mjs +1 -1
  41. package/dist/locale/de.mjs +1 -1
  42. package/dist/locale/el.js +1 -1
  43. package/dist/locale/el.min.js +1 -1
  44. package/dist/locale/el.min.mjs +1 -1
  45. package/dist/locale/el.mjs +1 -1
  46. package/dist/locale/en.js +1 -1
  47. package/dist/locale/en.min.js +1 -1
  48. package/dist/locale/en.min.mjs +1 -1
  49. package/dist/locale/en.mjs +1 -1
  50. package/dist/locale/eo.js +1 -1
  51. package/dist/locale/eo.min.js +1 -1
  52. package/dist/locale/eo.min.mjs +1 -1
  53. package/dist/locale/eo.mjs +1 -1
  54. package/dist/locale/es.js +1 -1
  55. package/dist/locale/es.min.js +1 -1
  56. package/dist/locale/es.min.mjs +1 -1
  57. package/dist/locale/es.mjs +1 -1
  58. package/dist/locale/et.js +1 -1
  59. package/dist/locale/et.min.js +1 -1
  60. package/dist/locale/et.min.mjs +1 -1
  61. package/dist/locale/et.mjs +1 -1
  62. package/dist/locale/eu.js +1 -1
  63. package/dist/locale/eu.min.js +1 -1
  64. package/dist/locale/eu.min.mjs +1 -1
  65. package/dist/locale/eu.mjs +1 -1
  66. package/dist/locale/fa.js +1 -1
  67. package/dist/locale/fa.min.js +1 -1
  68. package/dist/locale/fa.min.mjs +1 -1
  69. package/dist/locale/fa.mjs +1 -1
  70. package/dist/locale/fi.js +1 -1
  71. package/dist/locale/fi.min.js +1 -1
  72. package/dist/locale/fi.min.mjs +1 -1
  73. package/dist/locale/fi.mjs +1 -1
  74. package/dist/locale/fr.js +1 -1
  75. package/dist/locale/fr.min.js +1 -1
  76. package/dist/locale/fr.min.mjs +1 -1
  77. package/dist/locale/fr.mjs +1 -1
  78. package/dist/locale/he.js +1 -1
  79. package/dist/locale/he.min.js +1 -1
  80. package/dist/locale/he.min.mjs +1 -1
  81. package/dist/locale/he.mjs +1 -1
  82. package/dist/locale/hr.js +1 -1
  83. package/dist/locale/hr.min.js +1 -1
  84. package/dist/locale/hr.min.mjs +1 -1
  85. package/dist/locale/hr.mjs +1 -1
  86. package/dist/locale/hu.js +1 -1
  87. package/dist/locale/hu.min.js +1 -1
  88. package/dist/locale/hu.min.mjs +1 -1
  89. package/dist/locale/hu.mjs +1 -1
  90. package/dist/locale/hy-am.js +1 -1
  91. package/dist/locale/hy-am.min.js +1 -1
  92. package/dist/locale/hy-am.min.mjs +1 -1
  93. package/dist/locale/hy-am.mjs +1 -1
  94. package/dist/locale/id.js +1 -1
  95. package/dist/locale/id.min.js +1 -1
  96. package/dist/locale/id.min.mjs +1 -1
  97. package/dist/locale/id.mjs +1 -1
  98. package/dist/locale/it.js +1 -1
  99. package/dist/locale/it.min.js +1 -1
  100. package/dist/locale/it.min.mjs +1 -1
  101. package/dist/locale/it.mjs +1 -1
  102. package/dist/locale/ja.js +1 -1
  103. package/dist/locale/ja.min.js +1 -1
  104. package/dist/locale/ja.min.mjs +1 -1
  105. package/dist/locale/ja.mjs +1 -1
  106. package/dist/locale/kk.js +1 -1
  107. package/dist/locale/kk.min.js +1 -1
  108. package/dist/locale/kk.min.mjs +1 -1
  109. package/dist/locale/kk.mjs +1 -1
  110. package/dist/locale/km.js +1 -1
  111. package/dist/locale/km.min.js +1 -1
  112. package/dist/locale/km.min.mjs +1 -1
  113. package/dist/locale/km.mjs +1 -1
  114. package/dist/locale/ko.js +1 -1
  115. package/dist/locale/ko.min.js +1 -1
  116. package/dist/locale/ko.min.mjs +1 -1
  117. package/dist/locale/ko.mjs +1 -1
  118. package/dist/locale/ku.js +1 -1
  119. package/dist/locale/ku.min.js +1 -1
  120. package/dist/locale/ku.min.mjs +1 -1
  121. package/dist/locale/ku.mjs +1 -1
  122. package/dist/locale/ky.js +1 -1
  123. package/dist/locale/ky.min.js +1 -1
  124. package/dist/locale/ky.min.mjs +1 -1
  125. package/dist/locale/ky.mjs +1 -1
  126. package/dist/locale/lt.js +1 -1
  127. package/dist/locale/lt.min.js +1 -1
  128. package/dist/locale/lt.min.mjs +1 -1
  129. package/dist/locale/lt.mjs +1 -1
  130. package/dist/locale/lv.js +1 -1
  131. package/dist/locale/lv.min.js +1 -1
  132. package/dist/locale/lv.min.mjs +1 -1
  133. package/dist/locale/lv.mjs +1 -1
  134. package/dist/locale/mg.js +1 -1
  135. package/dist/locale/mg.min.js +1 -1
  136. package/dist/locale/mg.min.mjs +1 -1
  137. package/dist/locale/mg.mjs +1 -1
  138. package/dist/locale/mn.js +1 -1
  139. package/dist/locale/mn.min.js +1 -1
  140. package/dist/locale/mn.min.mjs +1 -1
  141. package/dist/locale/mn.mjs +1 -1
  142. package/dist/locale/nb-no.js +1 -1
  143. package/dist/locale/nb-no.min.js +1 -1
  144. package/dist/locale/nb-no.min.mjs +1 -1
  145. package/dist/locale/nb-no.mjs +1 -1
  146. package/dist/locale/nl.js +1 -1
  147. package/dist/locale/nl.min.js +1 -1
  148. package/dist/locale/nl.min.mjs +1 -1
  149. package/dist/locale/nl.mjs +1 -1
  150. package/dist/locale/pa.js +1 -1
  151. package/dist/locale/pa.min.js +1 -1
  152. package/dist/locale/pa.min.mjs +1 -1
  153. package/dist/locale/pa.mjs +1 -1
  154. package/dist/locale/pl.js +1 -1
  155. package/dist/locale/pl.min.js +1 -1
  156. package/dist/locale/pl.min.mjs +1 -1
  157. package/dist/locale/pl.mjs +1 -1
  158. package/dist/locale/pt-br.js +1 -1
  159. package/dist/locale/pt-br.min.js +1 -1
  160. package/dist/locale/pt-br.min.mjs +1 -1
  161. package/dist/locale/pt-br.mjs +1 -1
  162. package/dist/locale/pt.js +1 -1
  163. package/dist/locale/pt.min.js +1 -1
  164. package/dist/locale/pt.min.mjs +1 -1
  165. package/dist/locale/pt.mjs +1 -1
  166. package/dist/locale/ro.js +1 -1
  167. package/dist/locale/ro.min.js +1 -1
  168. package/dist/locale/ro.min.mjs +1 -1
  169. package/dist/locale/ro.mjs +1 -1
  170. package/dist/locale/ru.js +1 -1
  171. package/dist/locale/ru.min.js +1 -1
  172. package/dist/locale/ru.min.mjs +1 -1
  173. package/dist/locale/ru.mjs +1 -1
  174. package/dist/locale/sk.js +1 -1
  175. package/dist/locale/sk.min.js +1 -1
  176. package/dist/locale/sk.min.mjs +1 -1
  177. package/dist/locale/sk.mjs +1 -1
  178. package/dist/locale/sl.js +1 -1
  179. package/dist/locale/sl.min.js +1 -1
  180. package/dist/locale/sl.min.mjs +1 -1
  181. package/dist/locale/sl.mjs +1 -1
  182. package/dist/locale/sr.js +1 -1
  183. package/dist/locale/sr.min.js +1 -1
  184. package/dist/locale/sr.min.mjs +1 -1
  185. package/dist/locale/sr.mjs +1 -1
  186. package/dist/locale/sv.js +1 -1
  187. package/dist/locale/sv.min.js +1 -1
  188. package/dist/locale/sv.min.mjs +1 -1
  189. package/dist/locale/sv.mjs +1 -1
  190. package/dist/locale/ta.js +1 -1
  191. package/dist/locale/ta.min.js +1 -1
  192. package/dist/locale/ta.min.mjs +1 -1
  193. package/dist/locale/ta.mjs +1 -1
  194. package/dist/locale/th.js +1 -1
  195. package/dist/locale/th.min.js +1 -1
  196. package/dist/locale/th.min.mjs +1 -1
  197. package/dist/locale/th.mjs +1 -1
  198. package/dist/locale/tk.js +1 -1
  199. package/dist/locale/tk.min.js +1 -1
  200. package/dist/locale/tk.min.mjs +1 -1
  201. package/dist/locale/tk.mjs +1 -1
  202. package/dist/locale/tr.js +1 -1
  203. package/dist/locale/tr.min.js +1 -1
  204. package/dist/locale/tr.min.mjs +1 -1
  205. package/dist/locale/tr.mjs +1 -1
  206. package/dist/locale/ug-cn.js +1 -1
  207. package/dist/locale/ug-cn.min.js +1 -1
  208. package/dist/locale/ug-cn.min.mjs +1 -1
  209. package/dist/locale/ug-cn.mjs +1 -1
  210. package/dist/locale/uk.js +1 -1
  211. package/dist/locale/uk.min.js +1 -1
  212. package/dist/locale/uk.min.mjs +1 -1
  213. package/dist/locale/uk.mjs +1 -1
  214. package/dist/locale/uz-uz.js +1 -1
  215. package/dist/locale/uz-uz.min.js +1 -1
  216. package/dist/locale/uz-uz.min.mjs +1 -1
  217. package/dist/locale/uz-uz.mjs +1 -1
  218. package/dist/locale/vi.js +1 -1
  219. package/dist/locale/vi.min.js +1 -1
  220. package/dist/locale/vi.min.mjs +1 -1
  221. package/dist/locale/vi.mjs +1 -1
  222. package/dist/locale/zh-cn.js +1 -1
  223. package/dist/locale/zh-cn.min.js +1 -1
  224. package/dist/locale/zh-cn.min.mjs +1 -1
  225. package/dist/locale/zh-cn.mjs +1 -1
  226. package/dist/locale/zh-tw.js +1 -1
  227. package/dist/locale/zh-tw.min.js +1 -1
  228. package/dist/locale/zh-tw.min.mjs +1 -1
  229. package/dist/locale/zh-tw.mjs +1 -1
  230. package/es/_virtual/plugin-vue_export-helper.mjs.map +1 -1
  231. package/es/components/autocomplete/index.d.ts +625 -54
  232. package/es/components/autocomplete/src/autocomplete.vue.d.ts +625 -54
  233. package/es/components/autocomplete/src/autocomplete2.mjs +6 -5
  234. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  235. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  236. package/es/components/badge/src/badge2.mjs.map +1 -1
  237. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  238. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  239. package/es/components/button/src/button-group2.mjs.map +1 -1
  240. package/es/components/button/src/button2.mjs.map +1 -1
  241. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  242. package/es/components/card/src/card2.mjs.map +1 -1
  243. package/es/components/carousel/index.d.ts +1 -1
  244. package/es/components/carousel/src/item.mjs.map +1 -1
  245. package/es/components/carousel/src/main.mjs.map +1 -1
  246. package/es/components/carousel/src/main.vue.d.ts +1 -1
  247. package/es/components/cascader/index.d.ts +508 -182
  248. package/es/components/cascader/src/index.vue.d.ts +255 -91
  249. package/es/components/cascader-panel/src/menu.mjs.map +1 -1
  250. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  251. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  252. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  253. package/es/components/col/src/col.d.ts +37 -37
  254. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  255. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  256. package/es/components/collapse-transition/src/collapse-transition.mjs.map +1 -1
  257. package/es/components/color-picker/src/components/alpha-slider.mjs.map +1 -1
  258. package/es/components/color-picker/src/components/hue-slider.mjs.map +1 -1
  259. package/es/components/color-picker/src/components/predefine.mjs.map +1 -1
  260. package/es/components/color-picker/src/components/sv-panel.mjs.map +1 -1
  261. package/es/components/color-picker/src/index.mjs.map +1 -1
  262. package/es/components/container/src/aside.mjs.map +1 -1
  263. package/es/components/container/src/container.mjs.map +1 -1
  264. package/es/components/container/src/footer.mjs.map +1 -1
  265. package/es/components/container/src/header.mjs.map +1 -1
  266. package/es/components/container/src/main.mjs.map +1 -1
  267. package/es/components/date-picker/src/date-picker-com/basic-year-table.mjs.map +1 -1
  268. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  269. package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs.map +1 -1
  270. package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs.map +1 -1
  271. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  272. package/es/components/dialog/src/dialog2.mjs +11 -7
  273. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  274. package/es/components/divider/index.d.ts +7 -0
  275. package/es/components/divider/index.mjs +2 -2
  276. package/es/components/divider/index.mjs.map +1 -1
  277. package/es/components/divider/src/divider.vue.d.ts +7 -0
  278. package/es/components/divider/src/divider2.mjs +21 -23
  279. package/es/components/divider/src/divider2.mjs.map +1 -1
  280. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  281. package/es/components/dropdown/index.d.ts +4 -4
  282. package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -1
  283. package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
  284. package/es/components/dropdown/src/dropdown.vue.d.ts +4 -4
  285. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  286. package/es/components/empty/src/empty2.mjs.map +1 -1
  287. package/es/components/form/index.d.ts +27 -18
  288. package/es/components/form/src/form-item.d.ts +1 -2
  289. package/es/components/form/src/form-item.vue.d.ts +10 -8
  290. package/es/components/form/src/form-item2.mjs +40 -34
  291. package/es/components/form/src/form-item2.mjs.map +1 -1
  292. package/es/components/form/src/form.d.ts +1 -1
  293. package/es/components/form/src/form.vue.d.ts +13 -10
  294. package/es/components/form/src/form2.mjs +47 -29
  295. package/es/components/form/src/form2.mjs.map +1 -1
  296. package/es/components/form/src/types.d.ts +0 -7
  297. package/es/components/icon/src/icon2.mjs.map +1 -1
  298. package/es/components/image/src/image2.mjs.map +1 -1
  299. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  300. package/es/components/index.mjs +3 -1
  301. package/es/components/index.mjs.map +1 -1
  302. package/es/components/input/index.d.ts +125 -45
  303. package/es/components/input/index.mjs +2 -2
  304. package/es/components/input/index.mjs.map +1 -1
  305. package/es/components/input/src/input.d.ts +4 -3
  306. package/es/components/input/src/input.mjs +5 -1
  307. package/es/components/input/src/input.mjs.map +1 -1
  308. package/es/components/input/src/input.vue.d.ts +125 -45
  309. package/es/components/input/src/input2.mjs +261 -280
  310. package/es/components/input/src/input2.mjs.map +1 -1
  311. package/es/components/input/src/{calc-textarea-height.d.ts → utils.d.ts} +0 -0
  312. package/es/components/input/src/{calc-textarea-height.mjs → utils.mjs} +1 -1
  313. package/es/components/input/src/utils.mjs.map +1 -0
  314. package/es/components/input-number/index.d.ts +250 -90
  315. package/es/components/input-number/src/input-number.vue.d.ts +250 -90
  316. package/es/components/loading/index.d.ts +3 -27
  317. package/es/components/loading/index.mjs +3 -3
  318. package/es/components/loading/index.mjs.map +1 -1
  319. package/es/components/message/src/message2.mjs.map +1 -1
  320. package/es/components/message-box/src/index.mjs.map +1 -1
  321. package/es/components/notification/src/notification2.mjs.map +1 -1
  322. package/es/components/popover/index.d.ts +10 -10
  323. package/es/components/popover/src/index.vue.d.ts +5 -5
  324. package/es/components/popper/src/content.vue.d.ts +2 -2
  325. package/es/components/popper/src/trigger.mjs +32 -30
  326. package/es/components/popper/src/trigger.mjs.map +1 -1
  327. package/es/components/popper/src/utils.mjs +3 -0
  328. package/es/components/popper/src/utils.mjs.map +1 -1
  329. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  330. package/es/components/radio/src/radio2.mjs.map +1 -1
  331. package/es/components/rate/index.d.ts +102 -20
  332. package/es/components/rate/index.mjs +2 -2
  333. package/es/components/rate/index.mjs.map +1 -1
  334. package/es/components/rate/src/rate.d.ts +4 -4
  335. package/es/components/rate/src/rate.mjs +4 -8
  336. package/es/components/rate/src/rate.mjs.map +1 -1
  337. package/es/components/rate/src/rate.vue.d.ts +103 -20
  338. package/es/components/rate/src/rate2.mjs +88 -100
  339. package/es/components/rate/src/rate2.mjs.map +1 -1
  340. package/es/components/result/src/result2.mjs +14 -4
  341. package/es/components/result/src/result2.mjs.map +1 -1
  342. package/es/components/row/src/row.d.ts +14 -14
  343. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  344. package/es/components/scrollbar/src/thumb.vue.d.ts +1 -1
  345. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  346. package/es/components/select/index.d.ts +4 -4
  347. package/es/components/select/src/option-group.mjs.map +1 -1
  348. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  349. package/es/components/select/src/select.mjs.map +1 -1
  350. package/es/components/select/src/select.vue.d.ts +4 -4
  351. package/es/components/select/src/useSelect.d.ts +3 -3
  352. package/es/components/select-v2/index.d.ts +8 -8
  353. package/es/components/select-v2/src/group-item.mjs.map +1 -1
  354. package/es/components/select-v2/src/select-dropdown.mjs +3 -2
  355. package/es/components/select-v2/src/select-dropdown.mjs.map +1 -1
  356. package/es/components/select-v2/src/select.mjs.map +1 -1
  357. package/es/components/select-v2/src/select.vue.d.ts +4 -4
  358. package/es/components/select-v2/src/useSelect.d.ts +3 -3
  359. package/es/components/select-v2/src/useSelect.mjs +3 -2
  360. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  361. package/es/components/skeleton/index.d.ts +35 -1
  362. package/es/components/skeleton/index.mjs +5 -5
  363. package/es/components/skeleton/index.mjs.map +1 -1
  364. package/es/components/skeleton/src/skeleton-item.vue.d.ts +1 -0
  365. package/es/components/skeleton/src/skeleton-item2.mjs +15 -21
  366. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  367. package/es/components/skeleton/src/skeleton.vue.d.ts +32 -0
  368. package/es/components/skeleton/src/skeleton2.mjs +39 -45
  369. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  370. package/es/components/slider/src/button.mjs.map +1 -1
  371. package/es/components/slider/src/index.mjs.map +1 -1
  372. package/es/components/steps/src/index.mjs.map +1 -1
  373. package/es/components/steps/src/item.mjs.map +1 -1
  374. package/es/components/table/index.d.ts +7 -0
  375. package/es/components/table/src/composables/use-scrollbar.d.ts +9 -0
  376. package/es/components/table/src/composables/use-scrollbar.mjs +28 -0
  377. package/es/components/table/src/composables/use-scrollbar.mjs.map +1 -0
  378. package/es/components/table/src/filter-panel.vue.d.ts +3 -3
  379. package/es/components/table/src/table/style-helper.mjs +5 -5
  380. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  381. package/es/components/table/src/table.mjs +8 -2
  382. package/es/components/table/src/table.mjs.map +1 -1
  383. package/es/components/table/src/table.vue.d.ts +8 -3
  384. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  385. package/es/components/tabs/src/tab-pane2.mjs +1 -1
  386. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  387. package/es/components/tag/src/tag2.mjs.map +1 -1
  388. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  389. package/es/components/time-picker/src/common/picker.vue.d.ts +3 -3
  390. package/es/components/time-select/index.d.ts +4 -4
  391. package/es/components/time-select/src/time-select.vue.d.ts +2 -2
  392. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  393. package/es/components/tooltip/index.d.ts +1 -1
  394. package/es/components/tooltip/src/content.vue.d.ts +3 -3
  395. package/es/components/tooltip/src/tooltip.vue.d.ts +1 -1
  396. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  397. package/es/components/transfer/src/index.mjs.map +1 -1
  398. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  399. package/es/components/tree/src/tree-node.mjs.map +1 -1
  400. package/es/components/tree/src/tree.mjs.map +1 -1
  401. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  402. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  403. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  404. package/es/components/upload/src/upload2.mjs.map +1 -1
  405. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  406. package/es/hooks/use-deprecated/index.d.ts +2 -1
  407. package/es/hooks/use-deprecated/index.mjs +2 -2
  408. package/es/hooks/use-deprecated/index.mjs.map +1 -1
  409. package/es/index.mjs +3 -1
  410. package/es/index.mjs.map +1 -1
  411. package/es/tokens/form.d.ts +14 -3
  412. package/es/tokens/form.mjs.map +1 -1
  413. package/es/version.d.ts +1 -1
  414. package/es/version.mjs +1 -1
  415. package/es/version.mjs.map +1 -1
  416. package/lib/_virtual/plugin-vue_export-helper.js.map +1 -1
  417. package/lib/components/autocomplete/index.d.ts +625 -54
  418. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +625 -54
  419. package/lib/components/autocomplete/src/autocomplete2.js +6 -5
  420. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  421. package/lib/components/avatar/src/avatar2.js.map +1 -1
  422. package/lib/components/badge/src/badge2.js.map +1 -1
  423. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  424. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  425. package/lib/components/button/src/button-group2.js.map +1 -1
  426. package/lib/components/button/src/button2.js.map +1 -1
  427. package/lib/components/calendar/src/calendar2.js.map +1 -1
  428. package/lib/components/card/src/card2.js.map +1 -1
  429. package/lib/components/carousel/index.d.ts +1 -1
  430. package/lib/components/carousel/src/item.js.map +1 -1
  431. package/lib/components/carousel/src/main.js.map +1 -1
  432. package/lib/components/carousel/src/main.vue.d.ts +1 -1
  433. package/lib/components/cascader/index.d.ts +508 -182
  434. package/lib/components/cascader/src/index.vue.d.ts +255 -91
  435. package/lib/components/cascader-panel/src/menu.js.map +1 -1
  436. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  437. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  438. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  439. package/lib/components/col/src/col.d.ts +37 -37
  440. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  441. package/lib/components/collapse/src/collapse2.js.map +1 -1
  442. package/lib/components/collapse-transition/src/collapse-transition.js.map +1 -1
  443. package/lib/components/color-picker/src/components/alpha-slider.js.map +1 -1
  444. package/lib/components/color-picker/src/components/hue-slider.js.map +1 -1
  445. package/lib/components/color-picker/src/components/predefine.js.map +1 -1
  446. package/lib/components/color-picker/src/components/sv-panel.js.map +1 -1
  447. package/lib/components/color-picker/src/index.js.map +1 -1
  448. package/lib/components/container/src/aside.js.map +1 -1
  449. package/lib/components/container/src/container.js.map +1 -1
  450. package/lib/components/container/src/footer.js.map +1 -1
  451. package/lib/components/container/src/header.js.map +1 -1
  452. package/lib/components/container/src/main.js.map +1 -1
  453. package/lib/components/date-picker/src/date-picker-com/basic-year-table.js.map +1 -1
  454. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  455. package/lib/components/date-picker/src/date-picker-com/panel-date-range.js.map +1 -1
  456. package/lib/components/date-picker/src/date-picker-com/panel-month-range.js.map +1 -1
  457. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  458. package/lib/components/dialog/src/dialog2.js +10 -6
  459. package/lib/components/dialog/src/dialog2.js.map +1 -1
  460. package/lib/components/divider/index.d.ts +7 -0
  461. package/lib/components/divider/src/divider.vue.d.ts +7 -0
  462. package/lib/components/divider/src/divider2.js +20 -22
  463. package/lib/components/divider/src/divider2.js.map +1 -1
  464. package/lib/components/drawer/src/drawer2.js.map +1 -1
  465. package/lib/components/dropdown/index.d.ts +4 -4
  466. package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -1
  467. package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
  468. package/lib/components/dropdown/src/dropdown.vue.d.ts +4 -4
  469. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  470. package/lib/components/empty/src/empty2.js.map +1 -1
  471. package/lib/components/form/index.d.ts +27 -18
  472. package/lib/components/form/src/form-item.d.ts +1 -2
  473. package/lib/components/form/src/form-item.vue.d.ts +10 -8
  474. package/lib/components/form/src/form-item2.js +40 -34
  475. package/lib/components/form/src/form-item2.js.map +1 -1
  476. package/lib/components/form/src/form.d.ts +1 -1
  477. package/lib/components/form/src/form.vue.d.ts +13 -10
  478. package/lib/components/form/src/form2.js +47 -29
  479. package/lib/components/form/src/form2.js.map +1 -1
  480. package/lib/components/form/src/types.d.ts +0 -7
  481. package/lib/components/icon/src/icon2.js.map +1 -1
  482. package/lib/components/image/src/image2.js.map +1 -1
  483. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  484. package/lib/components/index.js +5 -2
  485. package/lib/components/index.js.map +1 -1
  486. package/lib/components/input/index.d.ts +125 -45
  487. package/lib/components/input/src/input.d.ts +4 -3
  488. package/lib/components/input/src/input.js +5 -1
  489. package/lib/components/input/src/input.js.map +1 -1
  490. package/lib/components/input/src/input.vue.d.ts +125 -45
  491. package/lib/components/input/src/input2.js +271 -290
  492. package/lib/components/input/src/input2.js.map +1 -1
  493. package/lib/components/input/src/{calc-textarea-height.d.ts → utils.d.ts} +0 -0
  494. package/lib/components/input/src/{calc-textarea-height.js → utils.js} +1 -1
  495. package/lib/components/input/src/utils.js.map +1 -0
  496. package/lib/components/input-number/index.d.ts +250 -90
  497. package/lib/components/input-number/src/input-number.vue.d.ts +250 -90
  498. package/lib/components/loading/index.d.ts +3 -27
  499. package/lib/components/loading/index.js +3 -4
  500. package/lib/components/loading/index.js.map +1 -1
  501. package/lib/components/message/src/message2.js.map +1 -1
  502. package/lib/components/message-box/src/index.js.map +1 -1
  503. package/lib/components/notification/src/notification2.js.map +1 -1
  504. package/lib/components/popover/index.d.ts +10 -10
  505. package/lib/components/popover/src/index.vue.d.ts +5 -5
  506. package/lib/components/popper/src/content.vue.d.ts +2 -2
  507. package/lib/components/popper/src/trigger.js +31 -29
  508. package/lib/components/popper/src/trigger.js.map +1 -1
  509. package/lib/components/popper/src/utils.js +3 -0
  510. package/lib/components/popper/src/utils.js.map +1 -1
  511. package/lib/components/radio/src/radio-group2.js.map +1 -1
  512. package/lib/components/radio/src/radio2.js.map +1 -1
  513. package/lib/components/rate/index.d.ts +102 -20
  514. package/lib/components/rate/src/rate.d.ts +4 -4
  515. package/lib/components/rate/src/rate.js +4 -8
  516. package/lib/components/rate/src/rate.js.map +1 -1
  517. package/lib/components/rate/src/rate.vue.d.ts +103 -20
  518. package/lib/components/rate/src/rate2.js +92 -104
  519. package/lib/components/rate/src/rate2.js.map +1 -1
  520. package/lib/components/result/src/result2.js +14 -4
  521. package/lib/components/result/src/result2.js.map +1 -1
  522. package/lib/components/row/src/row.d.ts +14 -14
  523. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  524. package/lib/components/scrollbar/src/thumb.vue.d.ts +1 -1
  525. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  526. package/lib/components/select/index.d.ts +4 -4
  527. package/lib/components/select/src/option-group.js.map +1 -1
  528. package/lib/components/select/src/select-dropdown.js.map +1 -1
  529. package/lib/components/select/src/select.js.map +1 -1
  530. package/lib/components/select/src/select.vue.d.ts +4 -4
  531. package/lib/components/select/src/useSelect.d.ts +3 -3
  532. package/lib/components/select-v2/index.d.ts +8 -8
  533. package/lib/components/select-v2/src/group-item.js.map +1 -1
  534. package/lib/components/select-v2/src/select-dropdown.js +3 -2
  535. package/lib/components/select-v2/src/select-dropdown.js.map +1 -1
  536. package/lib/components/select-v2/src/select.js.map +1 -1
  537. package/lib/components/select-v2/src/select.vue.d.ts +4 -4
  538. package/lib/components/select-v2/src/useSelect.d.ts +3 -3
  539. package/lib/components/select-v2/src/useSelect.js +3 -2
  540. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  541. package/lib/components/skeleton/index.d.ts +35 -1
  542. package/lib/components/skeleton/index.js.map +1 -1
  543. package/lib/components/skeleton/src/skeleton-item.vue.d.ts +1 -0
  544. package/lib/components/skeleton/src/skeleton-item2.js +14 -20
  545. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  546. package/lib/components/skeleton/src/skeleton.vue.d.ts +32 -0
  547. package/lib/components/skeleton/src/skeleton2.js +38 -44
  548. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  549. package/lib/components/slider/src/button.js.map +1 -1
  550. package/lib/components/slider/src/index.js.map +1 -1
  551. package/lib/components/steps/src/index.js.map +1 -1
  552. package/lib/components/steps/src/item.js.map +1 -1
  553. package/lib/components/table/index.d.ts +7 -0
  554. package/lib/components/table/src/composables/use-scrollbar.d.ts +9 -0
  555. package/lib/components/table/src/composables/use-scrollbar.js +32 -0
  556. package/lib/components/table/src/composables/use-scrollbar.js.map +1 -0
  557. package/lib/components/table/src/filter-panel.vue.d.ts +3 -3
  558. package/lib/components/table/src/table/style-helper.js +5 -5
  559. package/lib/components/table/src/table/style-helper.js.map +1 -1
  560. package/lib/components/table/src/table.js +8 -2
  561. package/lib/components/table/src/table.js.map +1 -1
  562. package/lib/components/table/src/table.vue.d.ts +8 -3
  563. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  564. package/lib/components/tabs/src/tab-pane2.js +1 -1
  565. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  566. package/lib/components/tag/src/tag2.js.map +1 -1
  567. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  568. package/lib/components/time-picker/src/common/picker.vue.d.ts +3 -3
  569. package/lib/components/time-select/index.d.ts +4 -4
  570. package/lib/components/time-select/src/time-select.vue.d.ts +2 -2
  571. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  572. package/lib/components/tooltip/index.d.ts +1 -1
  573. package/lib/components/tooltip/src/content.vue.d.ts +3 -3
  574. package/lib/components/tooltip/src/tooltip.vue.d.ts +1 -1
  575. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  576. package/lib/components/transfer/src/index.js.map +1 -1
  577. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  578. package/lib/components/tree/src/tree-node.js.map +1 -1
  579. package/lib/components/tree/src/tree.js.map +1 -1
  580. package/lib/components/tree-v2/src/tree.js.map +1 -1
  581. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  582. package/lib/components/upload/src/upload-list2.js.map +1 -1
  583. package/lib/components/upload/src/upload2.js.map +1 -1
  584. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  585. package/lib/hooks/use-deprecated/index.d.ts +2 -1
  586. package/lib/hooks/use-deprecated/index.js +2 -2
  587. package/lib/hooks/use-deprecated/index.js.map +1 -1
  588. package/lib/index.js +5 -2
  589. package/lib/index.js.map +1 -1
  590. package/lib/tokens/form.d.ts +14 -3
  591. package/lib/tokens/form.js.map +1 -1
  592. package/lib/version.d.ts +1 -1
  593. package/lib/version.js +1 -1
  594. package/lib/version.js.map +1 -1
  595. package/package.json +6 -6
  596. package/tags.json +1 -1
  597. package/theme-chalk/base.css +1 -1
  598. package/theme-chalk/el-autocomplete.css +1 -1
  599. package/theme-chalk/el-backtop.css +1 -1
  600. package/theme-chalk/el-button.css +1 -1
  601. package/theme-chalk/el-card.css +1 -1
  602. package/theme-chalk/el-carousel.css +1 -1
  603. package/theme-chalk/el-cascader-panel.css +1 -1
  604. package/theme-chalk/el-cascader.css +1 -1
  605. package/theme-chalk/el-checkbox-button.css +1 -1
  606. package/theme-chalk/el-checkbox.css +1 -1
  607. package/theme-chalk/el-collapse.css +1 -1
  608. package/theme-chalk/el-date-picker.css +1 -1
  609. package/theme-chalk/el-divider.css +1 -1
  610. package/theme-chalk/el-dropdown.css +1 -1
  611. package/theme-chalk/el-image.css +1 -1
  612. package/theme-chalk/el-input-number.css +1 -1
  613. package/theme-chalk/el-input.css +1 -1
  614. package/theme-chalk/el-menu.css +1 -1
  615. package/theme-chalk/el-message-box.css +1 -1
  616. package/theme-chalk/el-option-item.css +1 -1
  617. package/theme-chalk/el-option.css +1 -1
  618. package/theme-chalk/el-page-header.css +1 -1
  619. package/theme-chalk/el-pagination.css +1 -1
  620. package/theme-chalk/el-radio-button.css +1 -1
  621. package/theme-chalk/el-radio.css +1 -1
  622. package/theme-chalk/el-rate.css +1 -1
  623. package/theme-chalk/el-select-dropdown.css +1 -1
  624. package/theme-chalk/el-select-v2.css +1 -1
  625. package/theme-chalk/el-select.css +1 -1
  626. package/theme-chalk/el-slider.css +1 -1
  627. package/theme-chalk/el-steps.css +1 -1
  628. package/theme-chalk/el-switch.css +1 -1
  629. package/theme-chalk/el-table.css +1 -1
  630. package/theme-chalk/el-tabs.css +1 -1
  631. package/theme-chalk/el-time-picker.css +1 -1
  632. package/theme-chalk/el-time-select.css +1 -1
  633. package/theme-chalk/el-transfer.css +1 -1
  634. package/theme-chalk/el-tree.css +1 -1
  635. package/theme-chalk/el-upload.css +1 -1
  636. package/theme-chalk/el-var.css +1 -1
  637. package/theme-chalk/index.css +1 -1
  638. package/theme-chalk/src/button.scss +3 -3
  639. package/theme-chalk/src/card.scss +0 -4
  640. package/theme-chalk/src/carousel.scss +3 -0
  641. package/theme-chalk/src/cascader.scss +1 -1
  642. package/theme-chalk/src/checkbox-button.scss +2 -2
  643. package/theme-chalk/src/checkbox.scss +5 -5
  644. package/theme-chalk/src/collapse.scss +1 -1
  645. package/theme-chalk/src/common/var.scss +94 -61
  646. package/theme-chalk/src/dark/css-vars.scss +21 -0
  647. package/theme-chalk/src/dark/var.scss +59 -0
  648. package/theme-chalk/src/date-picker/date-table.scss +1 -1
  649. package/theme-chalk/src/date-picker/month-table.scss +1 -1
  650. package/theme-chalk/src/date-picker/picker-panel.scss +1 -1
  651. package/theme-chalk/src/date-picker/time-spinner.scss +1 -1
  652. package/theme-chalk/src/date-picker/year-table.scss +1 -1
  653. package/theme-chalk/src/divider.scss +2 -2
  654. package/theme-chalk/src/dropdown.scss +4 -6
  655. package/theme-chalk/src/image.scss +2 -2
  656. package/theme-chalk/src/input-number.scss +5 -5
  657. package/theme-chalk/src/input.scss +5 -5
  658. package/theme-chalk/src/message-box.scss +5 -0
  659. package/theme-chalk/src/mixins/_var.scss +14 -2
  660. package/theme-chalk/src/mixins/mixins.scss +2 -0
  661. package/theme-chalk/src/page-header.scss +1 -1
  662. package/theme-chalk/src/radio-button.scss +2 -2
  663. package/theme-chalk/src/radio.scss +5 -5
  664. package/theme-chalk/src/rate.scss +17 -2
  665. package/theme-chalk/src/select-v2.scss +2 -2
  666. package/theme-chalk/src/slider.scss +2 -2
  667. package/theme-chalk/src/steps.scss +1 -1
  668. package/theme-chalk/src/table.scss +1 -1
  669. package/theme-chalk/src/tabs.scss +5 -5
  670. package/theme-chalk/src/tag.scss +3 -3
  671. package/theme-chalk/src/time-select.scss +2 -1
  672. package/theme-chalk/src/upload.scss +5 -6
  673. package/theme-chalk/src/var.scss +27 -28
  674. package/web-types.json +1 -1
  675. package/es/components/input/src/calc-textarea-height.mjs.map +0 -1
  676. package/es/components/skeleton/src/image-placeholder.mjs +0 -21
  677. package/es/components/skeleton/src/image-placeholder.mjs.map +0 -1
  678. package/es/components/skeleton/src/image-placeholder.vue.d.ts +0 -2
  679. package/lib/components/input/src/calc-textarea-height.js.map +0 -1
  680. package/lib/components/skeleton/src/image-placeholder.js +0 -25
  681. package/lib/components/skeleton/src/image-placeholder.js.map +0 -1
  682. package/lib/components/skeleton/src/image-placeholder.vue.d.ts +0 -2
  683. package/theme-chalk/src/dark/vars.scss +0 -6
@@ -3,50 +3,56 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
- var shared = require('@vue/shared');
7
- require('../../../tokens/index.js');
8
- require('../../../utils/index.js');
9
6
  require('../../../constants/index.js');
10
- var index = require('../../icon/index.js');
11
- var iconsVue = require('@element-plus/icons-vue');
7
+ require('../../../utils/index.js');
8
+ require('../../../tokens/index.js');
9
+ var index$2 = require('../../icon/index.js');
12
10
  require('../../../hooks/index.js');
13
11
  var rate = require('./rate.js');
14
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
12
+ var shared = require('@vue/shared');
15
13
  var form = require('../../../tokens/form.js');
16
- var index$1 = require('../../../hooks/use-common-props/index.js');
17
- var index$2 = require('../../../hooks/use-namespace/index.js');
14
+ var index = require('../../../hooks/use-common-props/index.js');
15
+ var index$1 = require('../../../hooks/use-namespace/index.js');
18
16
  var event = require('../../../constants/event.js');
19
17
  var aria = require('../../../constants/aria.js');
20
18
  var style = require('../../../utils/dom/style.js');
21
19
 
22
- function getValueFromMap(value, map) {
23
- const isExcludedObject = (val) => shared.isObject(val);
24
- const matchedKeys = Object.keys(map).map((key) => +key).filter((key) => {
25
- const val = map[key];
26
- const excluded = isExcludedObject(val) ? val.excluded : false;
27
- return excluded ? value < key : value <= key;
28
- }).sort((a, b) => a - b);
29
- const matchedValue = map[matchedKeys[0]];
30
- return isExcludedObject(matchedValue) && matchedValue.value || matchedValue;
31
- }
32
- const _sfc_main = vue.defineComponent({
33
- name: "ElRate",
34
- components: {
35
- ElIcon: index.ElIcon,
36
- StarFilled: iconsVue.StarFilled,
37
- Star: iconsVue.Star
38
- },
20
+ const _hoisted_1 = ["aria-valuenow", "aria-valuetext", "aria-valuemax"];
21
+ const _hoisted_2 = ["onMousemove", "onClick"];
22
+ const __default__ = {
23
+ name: "ElRate"
24
+ };
25
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
26
+ ...__default__,
39
27
  props: rate.rateProps,
40
28
  emits: rate.rateEmits,
41
- setup(props, { emit }) {
42
- const elForm = vue.inject(form.formContextKey, {});
43
- const rateSize = index$1.useSize();
44
- const ns = index$2.useNamespace("rate");
29
+ setup(__props, { expose, emit }) {
30
+ const props = __props;
31
+ function getValueFromMap(value, map) {
32
+ const isExcludedObject = (val) => shared.isObject(val);
33
+ const matchedKeys = Object.keys(map).map((key) => +key).filter((key) => {
34
+ const val = map[key];
35
+ const excluded = isExcludedObject(val) ? val.excluded : false;
36
+ return excluded ? value < key : value <= key;
37
+ }).sort((a, b) => a - b);
38
+ const matchedValue = map[matchedKeys[0]];
39
+ return isExcludedObject(matchedValue) && matchedValue.value || matchedValue;
40
+ }
41
+ const formContext = vue.inject(form.formContextKey, void 0);
42
+ const rateSize = index.useSize();
43
+ const ns = index$1.useNamespace("rate");
45
44
  const currentValue = vue.ref(props.modelValue);
46
45
  const hoverIndex = vue.ref(-1);
47
46
  const pointerAtLeftHalf = vue.ref(true);
48
- const rateKls = vue.computed(() => [ns.b(), ns.m(rateSize.value)]);
49
- const rateDisabled = vue.computed(() => props.disabled || elForm.disabled);
47
+ const rateClasses = vue.computed(() => [ns.b(), ns.m(rateSize.value)]);
48
+ const rateDisabled = vue.computed(() => props.disabled || (formContext == null ? void 0 : formContext.disabled));
49
+ const rateStyles = vue.computed(() => {
50
+ return {
51
+ "--el-rate-void-color": props.voidColor,
52
+ "--el-rate-disabled-void-color": props.disabledVoidColor,
53
+ "--el-rate-fill-color": activeColor.value
54
+ };
55
+ });
50
56
  const text = vue.computed(() => {
51
57
  let result = "";
52
58
  if (props.showScore) {
@@ -62,7 +68,10 @@ const _sfc_main = vue.defineComponent({
62
68
  [props.highThreshold]: { value: props.colors[1], excluded: true },
63
69
  [props.max]: props.colors[2]
64
70
  } : props.colors);
65
- const activeColor = vue.computed(() => getValueFromMap(currentValue.value, colorMap.value));
71
+ const activeColor = vue.computed(() => {
72
+ const color = getValueFromMap(currentValue.value, colorMap.value);
73
+ return shared.isObject(color) ? "" : color;
74
+ });
66
75
  const decimalStyle = vue.computed(() => {
67
76
  let width = "";
68
77
  if (rateDisabled.value) {
@@ -98,12 +107,6 @@ const _sfc_main = vue.defineComponent({
98
107
  const showWhenAllowHalf = props.allowHalf && pointerAtLeftHalf.value && item - 0.5 <= currentValue.value && item > currentValue.value;
99
108
  return showWhenDisabled || showWhenAllowHalf;
100
109
  }
101
- function getIconStyle(item) {
102
- const voidColor = rateDisabled.value ? props.disabledVoidColor : props.voidColor;
103
- return {
104
- color: item <= currentValue.value ? activeColor.value : voidColor
105
- };
106
- }
107
110
  function selectValue(value) {
108
111
  if (rateDisabled.value) {
109
112
  return;
@@ -185,77 +188,62 @@ const _sfc_main = vue.defineComponent({
185
188
  if (!props.modelValue) {
186
189
  emit(event.UPDATE_MODEL_EVENT, 0);
187
190
  }
188
- return {
189
- ns,
190
- hoverIndex,
191
- currentValue,
192
- rateDisabled,
193
- text,
194
- decimalStyle,
195
- decimalIconComponent,
196
- iconComponents,
197
- rateKls,
198
- showDecimalIcon,
199
- getIconStyle,
200
- selectValue,
201
- handleKey,
191
+ expose({
202
192
  setCurrentValue,
203
193
  resetCurrentValue
204
- };
205
- }
206
- });
207
- const _hoisted_1 = ["aria-valuenow", "aria-valuetext", "aria-valuemax"];
208
- const _hoisted_2 = ["onMousemove", "onClick"];
209
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
210
- const _component_el_icon = vue.resolveComponent("el-icon");
211
- return vue.openBlock(), vue.createElementBlock("div", {
212
- class: vue.normalizeClass(_ctx.rateKls),
213
- role: "slider",
214
- "aria-valuenow": _ctx.currentValue,
215
- "aria-valuetext": _ctx.text,
216
- "aria-valuemin": "0",
217
- "aria-valuemax": _ctx.max,
218
- tabindex: "0",
219
- onKeydown: _cache[1] || (_cache[1] = (...args) => _ctx.handleKey && _ctx.handleKey(...args))
220
- }, [
221
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.max, (item, key) => {
222
- return vue.openBlock(), vue.createElementBlock("span", {
223
- key,
224
- class: vue.normalizeClass(_ctx.ns.e("item")),
225
- style: vue.normalizeStyle({ cursor: _ctx.rateDisabled ? "auto" : "pointer" }),
226
- onMousemove: ($event) => _ctx.setCurrentValue(item, $event),
227
- onMouseleave: _cache[0] || (_cache[0] = (...args) => _ctx.resetCurrentValue && _ctx.resetCurrentValue(...args)),
228
- onClick: ($event) => _ctx.selectValue(item)
194
+ });
195
+ return (_ctx, _cache) => {
196
+ return vue.openBlock(), vue.createElementBlock("div", {
197
+ class: vue.normalizeClass([vue.unref(rateClasses), vue.unref(ns).is("disabled", vue.unref(rateDisabled))]),
198
+ role: "slider",
199
+ "aria-valuenow": currentValue.value,
200
+ "aria-valuetext": vue.unref(text),
201
+ "aria-valuemin": "0",
202
+ "aria-valuemax": _ctx.max,
203
+ tabindex: "0",
204
+ style: vue.normalizeStyle(vue.unref(rateStyles)),
205
+ onKeydown: handleKey
229
206
  }, [
230
- vue.createVNode(_component_el_icon, {
231
- class: vue.normalizeClass([_ctx.ns.e("icon"), { hover: _ctx.hoverIndex === item }]),
232
- style: vue.normalizeStyle(_ctx.getIconStyle(item))
233
- }, {
234
- default: vue.withCtx(() => [
235
- !_ctx.showDecimalIcon(item) ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.iconComponents[item - 1]), { key: 0 })) : vue.createCommentVNode("v-if", true),
236
- _ctx.showDecimalIcon(item) ? (vue.openBlock(), vue.createBlock(_component_el_icon, {
237
- key: 1,
238
- style: vue.normalizeStyle(_ctx.decimalStyle),
239
- class: vue.normalizeClass([_ctx.ns.e("icon"), _ctx.ns.e("decimal")])
207
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.max, (item, key) => {
208
+ return vue.openBlock(), vue.createElementBlock("span", {
209
+ key,
210
+ class: vue.normalizeClass(vue.unref(ns).e("item")),
211
+ onMousemove: ($event) => setCurrentValue(item, $event),
212
+ onMouseleave: resetCurrentValue,
213
+ onClick: ($event) => selectValue(item)
214
+ }, [
215
+ vue.createVNode(vue.unref(index$2.ElIcon), {
216
+ class: vue.normalizeClass([
217
+ vue.unref(ns).e("icon"),
218
+ { hover: hoverIndex.value === item },
219
+ vue.unref(ns).is("active", item <= currentValue.value)
220
+ ])
240
221
  }, {
241
222
  default: vue.withCtx(() => [
242
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.decimalIconComponent)))
223
+ !showDecimalIcon(item) ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(iconComponents)[item - 1]), { key: 0 })) : vue.createCommentVNode("v-if", true),
224
+ showDecimalIcon(item) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ElIcon), {
225
+ key: 1,
226
+ style: vue.normalizeStyle(vue.unref(decimalStyle)),
227
+ class: vue.normalizeClass([vue.unref(ns).e("icon"), vue.unref(ns).e("decimal")])
228
+ }, {
229
+ default: vue.withCtx(() => [
230
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(decimalIconComponent))))
231
+ ]),
232
+ _: 1
233
+ }, 8, ["style", "class"])) : vue.createCommentVNode("v-if", true)
243
234
  ]),
244
- _: 1
245
- }, 8, ["style", "class"])) : vue.createCommentVNode("v-if", true)
246
- ]),
247
- _: 2
248
- }, 1032, ["class", "style"])
249
- ], 46, _hoisted_2);
250
- }), 128)),
251
- _ctx.showText || _ctx.showScore ? (vue.openBlock(), vue.createElementBlock("span", {
252
- key: 0,
253
- class: vue.normalizeClass(_ctx.ns.e("text")),
254
- style: vue.normalizeStyle({ color: _ctx.textColor })
255
- }, vue.toDisplayString(_ctx.text), 7)) : vue.createCommentVNode("v-if", true)
256
- ], 42, _hoisted_1);
257
- }
258
- var Rate = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render]]);
235
+ _: 2
236
+ }, 1032, ["class"])
237
+ ], 42, _hoisted_2);
238
+ }), 128)),
239
+ _ctx.showText || _ctx.showScore ? (vue.openBlock(), vue.createElementBlock("span", {
240
+ key: 0,
241
+ class: vue.normalizeClass(vue.unref(ns).e("text"))
242
+ }, vue.toDisplayString(vue.unref(text)), 3)) : vue.createCommentVNode("v-if", true)
243
+ ], 46, _hoisted_1);
244
+ };
245
+ }
246
+ });
259
247
 
260
- exports["default"] = Rate;
248
+ exports["default"] = _sfc_main;
261
249
  //# sourceMappingURL=rate2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rate2.js","sources":["../../../../../../packages/components/rate/src/rate.vue"],"sourcesContent":["<template>\n <div\n :class=\"rateKls\"\n role=\"slider\"\n :aria-valuenow=\"currentValue\"\n :aria-valuetext=\"text\"\n aria-valuemin=\"0\"\n :aria-valuemax=\"max\"\n tabindex=\"0\"\n @keydown=\"handleKey\"\n >\n <span\n v-for=\"(item, key) in max\"\n :key=\"key\"\n :class=\"ns.e('item')\"\n :style=\"{ cursor: rateDisabled ? 'auto' : 'pointer' }\"\n @mousemove=\"setCurrentValue(item, $event)\"\n @mouseleave=\"resetCurrentValue\"\n @click=\"selectValue(item)\"\n >\n <el-icon\n :class=\"[ns.e('icon'), { hover: hoverIndex === item }]\"\n :style=\"getIconStyle(item)\"\n >\n <component\n :is=\"iconComponents[item - 1]\"\n v-if=\"!showDecimalIcon(item)\"\n />\n <el-icon\n v-if=\"showDecimalIcon(item)\"\n :style=\"decimalStyle\"\n :class=\"[ns.e('icon'), ns.e('decimal')]\"\n >\n <component :is=\"decimalIconComponent\" />\n </el-icon>\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\">\nimport { defineComponent, inject, computed, ref, watch } from 'vue'\nimport { isObject, isArray } from '@vue/shared'\nimport { formContextKey } from '@element-plus/tokens'\nimport { hasClass } from '@element-plus/utils'\nimport { EVENT_CODE, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { StarFilled, Star } from '@element-plus/icons-vue'\nimport { useNamespace, useSize } from '@element-plus/hooks'\nimport { rateProps, rateEmits } from './rate'\n\nimport type { FormContext } from '@element-plus/tokens'\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\nexport default defineComponent({\n name: 'ElRate',\n components: {\n ElIcon,\n StarFilled,\n Star,\n },\n props: rateProps,\n emits: rateEmits,\n\n setup(props, { emit }) {\n const elForm = inject(formContextKey, {} as FormContext)\n\n const rateSize = useSize()\n const ns = useNamespace('rate')\n\n const currentValue = ref(props.modelValue)\n const hoverIndex = ref(-1)\n const pointerAtLeftHalf = ref(true)\n\n const rateKls = computed(() => [ns.b(), ns.m(rateSize.value)])\n\n const rateDisabled = computed(() => props.disabled || elForm.disabled)\n const 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 })\n const valueDecimal = computed(\n () => props.modelValue * 100 - Math.floor(props.modelValue) * 100\n )\n const 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 )\n const activeColor = computed(() =>\n getValueFromMap(currentValue.value, colorMap.value)\n )\n const 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 })\n const componentMap = computed(() =>\n isArray(props.icons)\n ? {\n [props.lowThreshold]: props.icons[0],\n [props.highThreshold]: {\n value: props.icons[1],\n excluded: true,\n },\n [props.max]: props.icons[2],\n }\n : props.icons\n )\n const decimalIconComponent = computed(() =>\n getValueFromMap(props.modelValue, componentMap.value)\n )\n const voidComponent = computed(() =>\n rateDisabled.value ? props.disabledVoidIcon : props.voidIcon\n )\n const activeComponent = computed(() =>\n getValueFromMap(currentValue.value, componentMap.value)\n )\n const iconComponents = computed(() => {\n const result = Array.from({ length: props.max })\n const threshold = currentValue.value\n result.fill(activeComponent.value, 0, threshold)\n result.fill(voidComponent.value, threshold, props.max)\n return result\n })\n\n function 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\n function getIconStyle(item: number) {\n const voidColor = rateDisabled.value\n ? props.disabledVoidColor\n : props.voidColor\n return {\n color: item <= currentValue.value ? activeColor.value : voidColor,\n }\n }\n\n function selectValue(value: number) {\n if (rateDisabled.value) {\n return\n }\n if (props.allowHalf && pointerAtLeftHalf.value) {\n emit(UPDATE_MODEL_EVENT, currentValue.value)\n if (props.modelValue !== currentValue.value) {\n emit('change', currentValue.value)\n }\n } else {\n emit(UPDATE_MODEL_EVENT, value)\n if (props.modelValue !== value) {\n emit('change', value)\n }\n }\n }\n\n function 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\n function setCurrentValue(value: number, event: MouseEvent) {\n if (rateDisabled.value) {\n return\n }\n if (props.allowHalf) {\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\n function resetCurrentValue() {\n if (rateDisabled.value) {\n return\n }\n if (props.allowHalf) {\n pointerAtLeftHalf.value =\n props.modelValue !== Math.floor(props.modelValue)\n }\n currentValue.value = props.modelValue\n hoverIndex.value = -1\n }\n\n watch(\n () => props.modelValue,\n (val) => {\n currentValue.value = val\n pointerAtLeftHalf.value =\n props.modelValue !== Math.floor(props.modelValue)\n }\n )\n\n if (!props.modelValue) {\n emit(UPDATE_MODEL_EVENT, 0)\n }\n\n return {\n ns,\n hoverIndex,\n currentValue,\n rateDisabled,\n text,\n decimalStyle,\n decimalIconComponent,\n iconComponents,\n rateKls,\n\n showDecimalIcon,\n getIconStyle,\n selectValue,\n handleKey,\n setCurrentValue,\n resetCurrentValue,\n }\n },\n})\n</script>\n"],"names":["isObject","defineComponent","ElIcon","StarFilled","Star","rateProps","rateEmits","inject","formContextKey","useSize","useNamespace","ref","computed","isArray","UPDATE_MODEL_EVENT","EVENT_CODE","hasClass","watch","_createElementBlock","_normalizeClass","_openBlock","_Fragment","_renderList","_normalizeStyle","_createVNode","_createBlock","_resolveDynamicComponent","_createCommentVNode","_toDisplayString"],"mappings":"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"}
1
+ {"version":3,"file":"rate2.js","sources":["../../../../../../packages/components/rate/src/rate.vue"],"sourcesContent":["<template>\n <div\n :class=\"[rateClasses, ns.is('disabled', rateDisabled)]\"\n role=\"slider\"\n :aria-valuenow=\"currentValue\"\n :aria-valuetext=\"text\"\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 <component\n :is=\"iconComponents[item - 1]\"\n v-if=\"!showDecimalIcon(item)\"\n />\n <el-icon\n v-if=\"showDecimalIcon(item)\"\n :style=\"decimalStyle\"\n :class=\"[ns.e('icon'), ns.e('decimal')]\"\n >\n <component :is=\"decimalIconComponent\" />\n </el-icon>\n </el-icon>\n </span>\n <span v-if=\"showText || showScore\" :class=\"ns.e('text')\">\n {{ text }}\n </span>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { inject, computed, ref, watch, type CSSProperties } from 'vue'\nimport { EVENT_CODE, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { isObject, isArray, hasClass } from '@element-plus/utils'\nimport { formContextKey } from '@element-plus/tokens'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace, useSize } from '@element-plus/hooks'\nimport { rateProps, rateEmits } from './rate'\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 rateSize = useSize()\nconst ns = useNamespace('rate')\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 {\n '--el-rate-void-color': props.voidColor,\n '--el-rate-disabled-void-color': props.disabledVoidColor,\n '--el-rate-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 isArray(props.icons)\n ? {\n [props.lowThreshold]: props.icons[0],\n [props.highThreshold]: {\n value: props.icons[1],\n excluded: true,\n },\n [props.max]: props.icons[2],\n }\n : props.icons\n)\nconst decimalIconComponent = computed(() =>\n getValueFromMap(props.modelValue, componentMap.value)\n)\nconst voidComponent = computed(() =>\n rateDisabled.value ? props.disabledVoidIcon : props.voidIcon\n)\nconst activeComponent = computed(() =>\n getValueFromMap(currentValue.value, componentMap.value)\n)\nconst iconComponents = computed(() => {\n const result = Array.from({ length: props.max })\n const threshold = currentValue.value\n result.fill(activeComponent.value, 0, threshold)\n result.fill(voidComponent.value, threshold, props.max)\n return result\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 selectValue(value: number) {\n if (rateDisabled.value) {\n return\n }\n if (props.allowHalf && pointerAtLeftHalf.value) {\n emit(UPDATE_MODEL_EVENT, currentValue.value)\n if (props.modelValue !== currentValue.value) {\n emit('change', currentValue.value)\n }\n } else {\n emit(UPDATE_MODEL_EVENT, value)\n if (props.modelValue !== value) {\n emit('change', value)\n }\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) {\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":["isObject","inject","formContextKey","useSize","useNamespace","ref","computed","isArray","UPDATE_MODEL_EVENT","EVENT_CODE","hasClass","watch"],"mappings":"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"}
@@ -7,12 +7,22 @@ require('../../../hooks/index.js');
7
7
  var result = require('./result.js');
8
8
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
9
9
  var index = require('../../../hooks/use-namespace/index.js');
10
+ var index$1 = require('../../../hooks/use-deprecated/index.js');
10
11
 
12
+ const COMPONENT_NAME = "ElResult";
11
13
  const _sfc_main = vue.defineComponent({
12
- name: "ElResult",
14
+ name: COMPONENT_NAME,
13
15
  props: result.resultProps,
14
- setup(props) {
16
+ setup(props, { slots }) {
15
17
  const ns = index.useNamespace("result");
18
+ index$1.useDeprecated({
19
+ scope: COMPONENT_NAME,
20
+ type: "Slot",
21
+ from: "subTitle",
22
+ replacement: "sub-title",
23
+ version: "2.1.3",
24
+ ref: "https://github.com/element-plus/element-plus/pull/6636/"
25
+ }, vue.computed(() => !!slots.subTitle));
16
26
  const resultIcon = vue.computed(() => {
17
27
  const icon = props.icon;
18
28
  const iconClass = icon && result.IconMap[icon] ? result.IconMap[icon] : "icon-info";
@@ -50,11 +60,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
50
60
  vue.createElementVNode("p", null, vue.toDisplayString(_ctx.title), 1)
51
61
  ])
52
62
  ], 2)) : vue.createCommentVNode("v-if", true),
53
- _ctx.subTitle || _ctx.$slots.subTitle ? (vue.openBlock(), vue.createElementBlock("div", {
63
+ _ctx.subTitle || _ctx.$slots["sub-title"] ? (vue.openBlock(), vue.createElementBlock("div", {
54
64
  key: 1,
55
65
  class: vue.normalizeClass(_ctx.ns.e("subtitle"))
56
66
  }, [
57
- vue.renderSlot(_ctx.$slots, "subTitle", {}, () => [
67
+ vue.renderSlot(_ctx.$slots, "sub-title", {}, () => [
58
68
  vue.createElementVNode("p", null, vue.toDisplayString(_ctx.subTitle), 1)
59
69
  ])
60
70
  ], 2)) : vue.createCommentVNode("v-if", true),
@@ -1 +1 @@
1
- {"version":3,"file":"result2.js","sources":["../../../../../../packages/components/result/src/result.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('icon')\">\n <slot name=\"icon\">\n <component\n :is=\"resultIcon.component\"\n v-if=\"resultIcon.component\"\n :class=\"resultIcon.class\"\n />\n </slot>\n </div>\n <div v-if=\"title || $slots.title\" :class=\"ns.e('title')\">\n <slot name=\"title\">\n <p>{{ title }}</p>\n </slot>\n </div>\n <div v-if=\"subTitle || $slots.subTitle\" :class=\"ns.e('subtitle')\">\n <slot name=\"subTitle\">\n <p>{{ subTitle }}</p>\n </slot>\n </div>\n <div v-if=\"$slots.extra\" :class=\"ns.e('extra')\">\n <slot name=\"extra\"></slot>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { resultProps, IconComponentMap, IconMap } from './result'\n\nexport default defineComponent({\n name: 'ElResult',\n props: resultProps,\n setup(props) {\n const ns = useNamespace('result')\n\n const resultIcon = computed(() => {\n const icon = props.icon\n const iconClass = icon && IconMap[icon] ? IconMap[icon] : 'icon-info'\n const iconComponent =\n IconComponentMap[iconClass] || IconComponentMap['icon-info']\n\n return {\n class: iconClass,\n component: iconComponent,\n }\n })\n\n return {\n ns,\n resultIcon,\n }\n },\n})\n</script>\n"],"names":["defineComponent","resultProps","useNamespace","computed","IconMap","IconComponentMap","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_openBlock","_createBlock","_resolveDynamicComponent","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"result2.js","sources":["../../../../../../packages/components/result/src/result.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('icon')\">\n <slot name=\"icon\">\n <component\n :is=\"resultIcon.component\"\n v-if=\"resultIcon.component\"\n :class=\"resultIcon.class\"\n />\n </slot>\n </div>\n <div v-if=\"title || $slots.title\" :class=\"ns.e('title')\">\n <slot name=\"title\">\n <p>{{ title }}</p>\n </slot>\n </div>\n <div v-if=\"subTitle || $slots['sub-title']\" :class=\"ns.e('subtitle')\">\n <slot name=\"sub-title\">\n <p>{{ subTitle }}</p>\n </slot>\n </div>\n <div v-if=\"$slots.extra\" :class=\"ns.e('extra')\">\n <slot name=\"extra\" />\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useNamespace, useDeprecated } from '@element-plus/hooks'\nimport { resultProps, IconComponentMap, IconMap } from './result'\nconst COMPONENT_NAME = 'ElResult'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: resultProps,\n setup(props, { slots }) {\n const ns = useNamespace('result')\n\n useDeprecated(\n {\n scope: COMPONENT_NAME,\n type: 'Slot',\n from: 'subTitle',\n replacement: 'sub-title',\n version: '2.1.3',\n ref: 'https://github.com/element-plus/element-plus/pull/6636/',\n },\n computed(() => !!slots.subTitle)\n )\n\n const resultIcon = computed(() => {\n const icon = props.icon\n const iconClass = icon && IconMap[icon] ? IconMap[icon] : 'icon-info'\n const iconComponent =\n IconComponentMap[iconClass] || IconComponentMap['icon-info']\n\n return {\n class: iconClass,\n component: iconComponent,\n }\n })\n\n return {\n ns,\n resultIcon,\n }\n },\n})\n</script>\n"],"names":["defineComponent","resultProps","useNamespace","useDeprecated","computed","IconMap","IconComponentMap","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_openBlock","_createBlock","_resolveDynamicComponent","_createCommentVNode"],"mappings":"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"}
@@ -1,26 +1,26 @@
1
1
  import type { ExtractPropTypes } from 'vue';
2
2
  export declare const rowProps: {
3
- readonly tag: import("@element-plus/utils").BuildPropReturn<StringConstructor, "div", unknown, unknown, unknown>;
4
- readonly gutter: import("@element-plus/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
5
- readonly justify: import("@element-plus/utils").BuildPropReturn<StringConstructor, "start", unknown, "center" | "space-around" | "space-between" | "space-evenly" | "end" | "start", unknown>;
6
- readonly align: import("@element-plus/utils").BuildPropReturn<StringConstructor, "top", unknown, "top" | "bottom" | "middle", unknown>;
3
+ readonly tag: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "div", unknown, unknown, unknown>;
4
+ readonly gutter: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
5
+ readonly justify: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "start", unknown, "center" | "space-around" | "space-between" | "space-evenly" | "end" | "start", unknown>;
6
+ readonly align: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "top", unknown, "top" | "bottom" | "middle", unknown>;
7
7
  };
8
8
  export declare type RowProps = ExtractPropTypes<typeof rowProps>;
9
9
  declare const Row: import("vue").DefineComponent<{
10
- readonly tag: import("@element-plus/utils").BuildPropReturn<StringConstructor, "div", unknown, unknown, unknown>;
11
- readonly gutter: import("@element-plus/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
12
- readonly justify: import("@element-plus/utils").BuildPropReturn<StringConstructor, "start", unknown, "center" | "space-around" | "space-between" | "space-evenly" | "end" | "start", unknown>;
13
- readonly align: import("@element-plus/utils").BuildPropReturn<StringConstructor, "top", unknown, "top" | "bottom" | "middle", unknown>;
10
+ readonly tag: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "div", unknown, unknown, unknown>;
11
+ readonly gutter: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
12
+ readonly justify: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "start", unknown, "center" | "space-around" | "space-between" | "space-evenly" | "end" | "start", unknown>;
13
+ readonly align: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "top", unknown, "top" | "bottom" | "middle", unknown>;
14
14
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
15
- readonly tag: import("@element-plus/utils").BuildPropReturn<StringConstructor, "div", unknown, unknown, unknown>;
16
- readonly gutter: import("@element-plus/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
17
- readonly justify: import("@element-plus/utils").BuildPropReturn<StringConstructor, "start", unknown, "center" | "space-around" | "space-between" | "space-evenly" | "end" | "start", unknown>;
18
- readonly align: import("@element-plus/utils").BuildPropReturn<StringConstructor, "top", unknown, "top" | "bottom" | "middle", unknown>;
15
+ readonly tag: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "div", unknown, unknown, unknown>;
16
+ readonly gutter: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
17
+ readonly justify: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "start", unknown, "center" | "space-around" | "space-between" | "space-evenly" | "end" | "start", unknown>;
18
+ readonly align: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "top", unknown, "top" | "bottom" | "middle", unknown>;
19
19
  }>>, {
20
- justify: import("@element-plus/utils").BuildPropType<StringConstructor, "center" | "space-around" | "space-between" | "space-evenly" | "end" | "start", unknown>;
20
+ justify: import("element-plus/es/utils").BuildPropType<StringConstructor, "center" | "space-around" | "space-between" | "space-evenly" | "end" | "start", unknown>;
21
21
  tag: string;
22
+ align: import("element-plus/es/utils").BuildPropType<StringConstructor, "top" | "bottom" | "middle", unknown>;
22
23
  gutter: number;
23
- align: import("@element-plus/utils").BuildPropType<StringConstructor, "top" | "bottom" | "middle", unknown>;
24
24
  }>;
25
25
  export default Row;
26
26
  export declare type RowInstance = InstanceType<typeof Row>;
@@ -1 +1 @@
1
- {"version":3,"file":"scrollbar2.js","sources":["../../../../../../packages/components/scrollbar/src/scrollbar.vue"],"sourcesContent":["<template>\n <div ref=\"scrollbar$\" :class=\"ns.b()\">\n <div\n ref=\"wrap$\"\n :class=\"[\n wrapClass,\n ns.e('wrap'),\n { [ns.em('wrap', 'hidden-default')]: !native },\n ]\"\n :style=\"style\"\n @scroll=\"handleScroll\"\n >\n <component\n :is=\"tag\"\n ref=\"resize$\"\n :class=\"[ns.e('view'), viewClass]\"\n :style=\"viewStyle\"\n >\n <slot />\n </component>\n </div>\n <template v-if=\"!native\">\n <bar\n ref=\"barRef\"\n :height=\"sizeHeight\"\n :width=\"sizeWidth\"\n :always=\"always\"\n :ratio-x=\"ratioX\"\n :ratio-y=\"ratioY\"\n ></bar>\n </template>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n nextTick,\n onMounted,\n provide,\n ref,\n watch,\n reactive,\n} from 'vue'\nimport { useResizeObserver, useEventListener } from '@vueuse/core'\nimport { isNumber, debugWarn, addUnit } from '@element-plus/utils'\nimport { scrollbarContextKey } from '@element-plus/tokens'\nimport { useNamespace } from '@element-plus/hooks'\nimport Bar from './bar.vue'\n\nimport { scrollbarProps, scrollbarEmits } from './scrollbar'\nimport type { StyleValue, CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElScrollbar',\n components: {\n Bar,\n },\n props: scrollbarProps,\n emits: scrollbarEmits,\n\n setup(props, { emit }) {\n const ns = useNamespace('scrollbar')\n\n let stopResizeObserver: (() => void) | undefined = undefined\n let stopResizeListener: (() => void) | undefined = undefined\n\n const scrollbar$ = ref<HTMLDivElement>()\n const wrap$ = ref<HTMLDivElement>()\n const resize$ = ref<HTMLElement>()\n\n const sizeWidth = ref('0')\n const sizeHeight = ref('0')\n const barRef = ref()\n const moveX = ref(0)\n const moveY = ref(0)\n const ratioY = ref(1)\n const ratioX = ref(1)\n const SCOPE = 'ElScrollbar'\n const GAP = 4 // top 2 + bottom 2 of bar instance\n\n const style = computed<StyleValue>(() => {\n const style: CSSProperties = {}\n if (props.height) style.height = addUnit(props.height)\n if (props.maxHeight) style.maxHeight = addUnit(props.maxHeight)\n return [props.wrapStyle, style]\n })\n\n const handleScroll = () => {\n if (wrap$.value) {\n barRef.value?.handleScroll(wrap$.value)\n\n emit('scroll', {\n scrollTop: wrap$.value.scrollTop,\n scrollLeft: wrap$.value.scrollLeft,\n })\n }\n }\n\n const setScrollTop = (value: number) => {\n if (!isNumber(value)) {\n debugWarn(SCOPE, 'value must be a number')\n return\n }\n wrap$.value!.scrollTop = value\n }\n\n const setScrollLeft = (value: number) => {\n if (!isNumber(value)) {\n debugWarn(SCOPE, 'value must be a number')\n return\n }\n wrap$.value!.scrollLeft = value\n }\n\n const update = () => {\n if (!wrap$.value) return\n const offsetHeight = wrap$.value.offsetHeight - GAP\n const offsetWidth = wrap$.value.offsetWidth - GAP\n\n const originalHeight = offsetHeight ** 2 / wrap$.value.scrollHeight\n const originalWidth = offsetWidth ** 2 / wrap$.value.scrollWidth\n const height = Math.max(originalHeight, props.minSize)\n const width = Math.max(originalWidth, props.minSize)\n\n ratioY.value =\n originalHeight /\n (offsetHeight - originalHeight) /\n (height / (offsetHeight - height))\n ratioX.value =\n originalWidth /\n (offsetWidth - originalWidth) /\n (width / (offsetWidth - width))\n\n sizeHeight.value = height + GAP < offsetHeight ? `${height}px` : ''\n sizeWidth.value = width + GAP < offsetWidth ? `${width}px` : ''\n }\n\n watch(\n () => props.noresize,\n (noresize) => {\n if (noresize) {\n stopResizeObserver?.()\n stopResizeListener?.()\n } else {\n ;({ stop: stopResizeObserver } = useResizeObserver(resize$, update))\n stopResizeListener = useEventListener('resize', update)\n }\n },\n { immediate: true }\n )\n\n watch(\n () => [props.maxHeight, props.height],\n () => {\n if (!props.native)\n nextTick(() => {\n update()\n if (wrap$.value) {\n barRef.value?.handleScroll(wrap$.value)\n }\n })\n }\n )\n\n provide(\n scrollbarContextKey,\n reactive({\n scrollbarElement: scrollbar$,\n wrapElement: wrap$,\n })\n )\n\n onMounted(() => {\n if (!props.native) nextTick(() => update())\n })\n\n return {\n ns,\n scrollbar$,\n wrap$,\n resize$,\n barRef,\n moveX,\n moveY,\n ratioX,\n ratioY,\n sizeWidth,\n sizeHeight,\n style,\n update,\n handleScroll,\n setScrollTop,\n setScrollLeft,\n }\n },\n})\n</script>\n"],"names":["defineComponent","Bar","scrollbarProps","scrollbarEmits","useNamespace","ref","style","computed","addUnit","isNumber","debugWarn","watch","useEventListener","nextTick","provide","scrollbarContextKey","reactive","onMounted","_resolveComponent","_openBlock","_normalizeClass","_createElementVNode","_normalizeStyle","_createBlock","_resolveDynamicComponent","_withCtx","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;AAqDA,MAAK,YAAaA,mBAAa,CAAA;AAAA,EAC7B,IAAM,EAAA,aAAA;AAAA,EACN,UAAY,EAAA;AAAA,SACVC,cAAA;AAAA,GAAA;AAAA,EAEF,KAAO,EAAAC,wBAAA;AAAA,EACP,KAAO,EAAAC,wBAAA;AAAA,EAEP,KAAA,CAAM,KAAO,EAAA,EAAE,IAAQ,EAAA,EAAA;AACrB,IAAA,MAAM,KAAKC,kBAAa,CAAA,WAAA,CAAA,CAAA;AAExB,IAAA,IAAI,kBAA+C,GAAA,KAAA,CAAA,CAAA;AACnD,IAAA,IAAI,kBAA+C,GAAA,KAAA,CAAA,CAAA;AAEnD,IAAA,MAAM,UAAa,GAAAC,OAAA,EAAA,CAAA;AACnB,IAAA,MAAM,KAAQ,GAAAA,OAAA,EAAA,CAAA;AACd,IAAA,MAAM,OAAU,GAAAA,OAAA,EAAA,CAAA;AAEhB,IAAA,MAAM,YAAYA,OAAI,CAAA,GAAA,CAAA,CAAA;AACtB,IAAA,MAAM,aAAaA,OAAI,CAAA,GAAA,CAAA,CAAA;AACvB,IAAA,MAAM,MAAS,GAAAA,OAAA,EAAA,CAAA;AACf,IAAA,MAAM,QAAQA,OAAI,CAAA,CAAA,CAAA,CAAA;AAClB,IAAA,MAAM,QAAQA,OAAI,CAAA,CAAA,CAAA,CAAA;AAClB,IAAA,MAAM,SAASA,OAAI,CAAA,CAAA,CAAA,CAAA;AACnB,IAAA,MAAM,SAASA,OAAI,CAAA,CAAA,CAAA,CAAA;AACnB,IAAA,MAAM,KAAQ,GAAA,aAAA,CAAA;AACd,IAAA,MAAM,GAAM,GAAA,CAAA,CAAA;AAEZ,IAAM,MAAAC,OAAA,GAAQC,aAAqB,MAAM;AACvC,MAAA,MAAM,MAAuB,GAAA,EAAA,CAAA;AAC7B,MAAA,IAAI,KAAM,CAAA,MAAA;AAAQ,QAAM,MAAA,CAAA,MAAA,GAASC,cAAQ,KAAM,CAAA,MAAA,CAAA,CAAA;AAC/C,MAAA,IAAI,KAAM,CAAA,SAAA;AAAW,QAAM,MAAA,CAAA,SAAA,GAAYA,cAAQ,KAAM,CAAA,SAAA,CAAA,CAAA;AACrD,MAAO,OAAA,CAAC,MAAM,SAAW,EAAA,MAAA,CAAA,CAAA;AAAA,KAAA,CAAA,CAAA;AAG3B,IAAA,MAAM,eAAe,MAAM;AACzB,MAAA,IAAI;AACF,MAAO,IAAA,KAAA,CAAA,KAAA;AAEP,QAAA,CAAA,EAAA,GAAe,MAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAA,CAAA,KAAA,CAAA,KAAA,CAAA,CAAA;AAAA,QACb,IAAA,CAAA,QAAW;AAAY,UACvB,SAAA,EAAA,WAAwB,CAAA,SAAA;AAAA,UAAA,UAAA,EAAA,KAAA,CAAA,KAAA,CAAA,UAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAAA;AAK9B,KAAM,CAAA;AACJ,IAAI,MAAA,YAAkB,GAAA,CAAA,KAAA,KAAA;AACpB,MAAA,IAAA,CAAAC,aAAiB,CAAA,KAAA,CAAA,EAAA;AACjB,QAAAC,eAAA,CAAA,KAAA,EAAA,wBAAA,CAAA,CAAA;AAAA,QAAA,OAAA;AAEF,OAAA;AAAyB,MAAA,KAAA,CAAA,KAAA,CAAA,SAAA,GAAA,KAAA,CAAA;AAG3B,KAAM,CAAA;AACJ,IAAI,MAAA,aAAkB,GAAA,CAAA,KAAA,KAAA;AACpB,MAAA,IAAA,CAAAD,aAAiB,CAAA,KAAA,CAAA,EAAA;AACjB,QAAAC,eAAA,CAAA,KAAA,EAAA,wBAAA,CAAA,CAAA;AAAA,QAAA,OAAA;AAEF,OAAA;AAA0B,MAAA,KAAA,CAAA,KAAA,CAAA,UAAA,GAAA,KAAA,CAAA;AAG5B,KAAA,CAAA;AACE,IAAA,MAAI,MAAO,GAAA,MAAA;AAAO,MAAA,IAAA,CAAA,KAAA,CAAA,KAAA;AAClB,QAAM,OAAA;AACN,MAAM,MAAA,YAAA,GAAoB,KAAA,CAAA,KAAM,CAAc,YAAA,GAAA,GAAA,CAAA;AAE9C,MAAA,MAAM,WAAiB,GAAA,KAAA,CAAA,KAAA,CAAA,WAAoB,GAAA,GAAM,CAAM;AACvD,MAAA,MAAM,cAAgB,GAAA,YAAA,IAAmB,CAAA,GAAA,KAAY,CAAA,KAAA,CAAA,YAAA,CAAA;AACrD,MAAA,MAAM,aAAS,GAAS,WAAA,IAAA,CAAA,GAAsB,KAAA,CAAA,KAAA,CAAA,WAAA,CAAA;AAC9C,MAAA,MAAM,MAAQ,GAAA,IAAK,CAAI,GAAA,CAAA,cAAe,EAAM,KAAA,CAAA,OAAA,CAAA,CAAA;AAE5C,MAAA,MAAA,KACE,GAAA,IAAA,CAAA,GAAA,CAAA,aACgB,EAAA,KAAA,CAAA,OAAA,CAAA,CAAA;AAElB,MAAA,MAAA,CAAO,KACL,GAAA,cAAA,IACe,YAAA,GAAA,cAAA,CACd,UAAuB,IAAA,YAAA,GAAA,MAAA,CAAA,CAAA,CAAA;AAE1B,MAAA,MAAA,CAAA,KAAmB,GAAA,aAAS,IAAM,WAAA,GAAA,aAA+B,CAAA,IAAA,KAAA,IAAA,WAAA,GAAA,KAAA,CAAA,CAAA,CAAA;AACjE,MAAA,UAAU,CAAQ,KAAA,GAAA,MAAA,GAAc,GAAA,GAAA,YAAc,GAAG,CAAY,EAAA,MAAA,CAAA,EAAA,CAAA,GAAA,EAAA,CAAA;AAAA,MAAA,SAAA,CAAA,KAAA,GAAA,KAAA,GAAA,GAAA,GAAA,WAAA,GAAA,CAAA,EAAA,KAAA,CAAA,EAAA,CAAA,GAAA,EAAA,CAAA;AAG/D,KAAA,CAAA;AAGI,IAAAC,SAAA,CAAI,MAAU,KAAA,CAAA,QAAA,EAAA,CAAA,QAAA,KAAA;AACZ,MAAA,IAAA,QAAA,EAAA;AACA,QAAA,kBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,kBAAA,EAAA,CAAA;AAAA,QACK,kBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,kBAAA,EAAA,CAAA;AACL,OAAA,MAAA;AAAC,QAAC,CAAE;AACJ,QAAA,CAAA,EAAA,IAAA,EAAA,6CAAgD,CAAA,OAAA,EAAA,MAAA,CAAA,EAAA;AAAA,QAAA,kBAAA,GAAAC,qBAAA,CAAA,QAAA,EAAA,MAAA,CAAA,CAAA;AAAA,OAGpD;AAGF,KAAA,EAAA,EAAA,SACS,EAAA,IAAiB,EAAA,CAAA,CAAA;AAEtB,IAAAD,SAAA,CAAI,MAAO,CAAA,KAAA,CAAA,SAAA,EAAA,KAAA,CAAA,MAAA,CAAA,EAAA,MAAA;AACT,MAAA,IAAA,CAAA,KAAA,CAAS,MAAM;AACb,QAAAE,YAAA,CAAA,MAAA;AACA,UAAA,IAAI;AACF,UAAO,MAAA,EAAA,CAAA;AAA0B,UAAA,IAAA,KAAA,CAAA,KAAA,EAAA;AAAA,YAAA,CAAA,EAAA,GAAA,MAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAA,CAAA,KAAA,CAAA,KAAA,CAAA,CAAA;AAAA,WAAA;AAM3C,SAAA,CAAA,CAAA;AAEW,KAAA,CACP,CAAkB;AAAA,IAAAC,WACL,CAAAC,+BAAA,EAAAC,YAAA,CAAA;AAAA,MAAA,gBAAA,EAAA,UAAA;AAIjB,MAAA,WAAgB,EAAA,KAAA;AACd,KAAA,CAAA,CAAA,CAAA;AAAmB,IAAAC,aAAA,CAAA,MAAe;AAAA,MAAA,IAAA,CAAA,KAAA,CAAA,MAAA;AAGpC,QAAOJ,YAAA,CAAA,MAAA,MAAA,EAAA,CAAA,CAAA;AAAA,KACL,CAAA,CAAA;AAAA,IACA,OAAA;AAAA,MACA,EAAA;AAAA,MACA,UAAA;AAAA,MACA,KAAA;AAAA,MACA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,KAAA;AAAA,MACA,KAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,UAAA;AAAA,aACAP,OAAA;AAAA,MACA,MAAA;AAAA,MACA,YAAA;AAAA,MAAA,YAAA;AAAA,MAAA,aAAA;AAAA,KAAA,CAAA;;;yBAlKE,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,EAAA,KAAA,EAAA,QAAA,EAAA;AAAA,EAAA,MA9BG,cAAA,GAAAY,oBAAA,CAAA,KAAA,CAAA,CAAA;AAAA,EAAc,OAAAC,uCAAU,CAAA,KAAA,EAAA;AAAA,IAAA,GAAA,EAAA,YAAA;IAC/B,KAkBM,EAAAC,kBAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA;AAAA,GAAA,EAAA;AAjBA,IAAAC,sBACE,CAAA,KAAA,EAAA;AAAA,MAAY,GAAA,EAAA,OAAA;AAAA,MAAA,yBAAuB,CAAA;AAAA,QAAqB,IAAA,CAAA,SAAK;AAA8B,QAAA,IAAA,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,CAAA;AAAA,eAKzF,CAAA,EAAA,CAAA,EAAA,CAAA,MAAA,EAAA,gBAAA,CAAA,GAAA,CAAA,IAAA,CAAA,MAAA,EAAA;AAAA;AACC,MAAA,KAAA,EAAAC,kBAAA,CAAA,IAAA,CAAA,KAAA,CAAA;AAET,MAAA,QAAA,EAAA,MAAA,CAAA,CAAA,CAAA,KAAA,6BACO,CAAG,YAAA,IAAA,IAAA,CAAA,YAAA,CAAA,GAAA,IAAA,CAAA,CAAA;AAAA,KAAA,EAAA;AACJ,OAAAH,aACE,EAAA,EAAAI,eAAM,CAAAC,2BAAW,CAAA,IAAA,CAAA,GAAA,CAAA,EAAA;AAAA,QACtB,cAAO;AAAA,QAAA,KAAA,EAAAJ,kBAAA,CAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,CAAA,EAAA,IAAA,CAAA,SAAA,CAAA,CAAA;iCAEA,CAAA,IAAA,CAAA,SAAA,CAAA;AAAA,OAAA,EAAA;AAAA,QAAA,OAAA,EAAAK,WAAA,CAAA,MAAA;AAAA,UAAAC,cAAA,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;;;AAGK,OAAA,EAAA,CAAA,EAAA,CAAA,OAAA,EAAA,OAAA,CAAA,CAAA;AAQR,KAAA,EAAA,EAAA,CAAA;SAND,CAAA,MAAA,IAAAP,aAAA,EAAA,EAAAI,eAAA,CAAA,cAAA,EAAA;AAAA,MACH,GAAQ,EAAA,CAAA;AAAA,MACR,GAAO,EAAA,QAAA;AAAA,MACP,MAAQ,EAAA,IAAA,CAAA,UAAA;AAAA,MACR,KAAS,EAAA,IAAA,CAAA,SAAA;AAAA,MACT,MAAS,EAAA,IAAA,CAAA,MAAA;AAAA,MAAA,SAAA,EAAA,IAAA,CAAA,MAAA;;;;;;;;;"}
1
+ {"version":3,"file":"scrollbar2.js","sources":["../../../../../../packages/components/scrollbar/src/scrollbar.vue"],"sourcesContent":["<template>\n <div ref=\"scrollbar$\" :class=\"ns.b()\">\n <div\n ref=\"wrap$\"\n :class=\"[\n wrapClass,\n ns.e('wrap'),\n { [ns.em('wrap', 'hidden-default')]: !native },\n ]\"\n :style=\"style\"\n @scroll=\"handleScroll\"\n >\n <component\n :is=\"tag\"\n ref=\"resize$\"\n :class=\"[ns.e('view'), viewClass]\"\n :style=\"viewStyle\"\n >\n <slot />\n </component>\n </div>\n <template v-if=\"!native\">\n <bar\n ref=\"barRef\"\n :height=\"sizeHeight\"\n :width=\"sizeWidth\"\n :always=\"always\"\n :ratio-x=\"ratioX\"\n :ratio-y=\"ratioY\"\n />\n </template>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n nextTick,\n onMounted,\n provide,\n ref,\n watch,\n reactive,\n} from 'vue'\nimport { useResizeObserver, useEventListener } from '@vueuse/core'\nimport { isNumber, debugWarn, addUnit } from '@element-plus/utils'\nimport { scrollbarContextKey } from '@element-plus/tokens'\nimport { useNamespace } from '@element-plus/hooks'\nimport Bar from './bar.vue'\n\nimport { scrollbarProps, scrollbarEmits } from './scrollbar'\nimport type { StyleValue, CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElScrollbar',\n components: {\n Bar,\n },\n props: scrollbarProps,\n emits: scrollbarEmits,\n\n setup(props, { emit }) {\n const ns = useNamespace('scrollbar')\n\n let stopResizeObserver: (() => void) | undefined = undefined\n let stopResizeListener: (() => void) | undefined = undefined\n\n const scrollbar$ = ref<HTMLDivElement>()\n const wrap$ = ref<HTMLDivElement>()\n const resize$ = ref<HTMLElement>()\n\n const sizeWidth = ref('0')\n const sizeHeight = ref('0')\n const barRef = ref()\n const moveX = ref(0)\n const moveY = ref(0)\n const ratioY = ref(1)\n const ratioX = ref(1)\n const SCOPE = 'ElScrollbar'\n const GAP = 4 // top 2 + bottom 2 of bar instance\n\n const style = computed<StyleValue>(() => {\n const style: CSSProperties = {}\n if (props.height) style.height = addUnit(props.height)\n if (props.maxHeight) style.maxHeight = addUnit(props.maxHeight)\n return [props.wrapStyle, style]\n })\n\n const handleScroll = () => {\n if (wrap$.value) {\n barRef.value?.handleScroll(wrap$.value)\n\n emit('scroll', {\n scrollTop: wrap$.value.scrollTop,\n scrollLeft: wrap$.value.scrollLeft,\n })\n }\n }\n\n const setScrollTop = (value: number) => {\n if (!isNumber(value)) {\n debugWarn(SCOPE, 'value must be a number')\n return\n }\n wrap$.value!.scrollTop = value\n }\n\n const setScrollLeft = (value: number) => {\n if (!isNumber(value)) {\n debugWarn(SCOPE, 'value must be a number')\n return\n }\n wrap$.value!.scrollLeft = value\n }\n\n const update = () => {\n if (!wrap$.value) return\n const offsetHeight = wrap$.value.offsetHeight - GAP\n const offsetWidth = wrap$.value.offsetWidth - GAP\n\n const originalHeight = offsetHeight ** 2 / wrap$.value.scrollHeight\n const originalWidth = offsetWidth ** 2 / wrap$.value.scrollWidth\n const height = Math.max(originalHeight, props.minSize)\n const width = Math.max(originalWidth, props.minSize)\n\n ratioY.value =\n originalHeight /\n (offsetHeight - originalHeight) /\n (height / (offsetHeight - height))\n ratioX.value =\n originalWidth /\n (offsetWidth - originalWidth) /\n (width / (offsetWidth - width))\n\n sizeHeight.value = height + GAP < offsetHeight ? `${height}px` : ''\n sizeWidth.value = width + GAP < offsetWidth ? `${width}px` : ''\n }\n\n watch(\n () => props.noresize,\n (noresize) => {\n if (noresize) {\n stopResizeObserver?.()\n stopResizeListener?.()\n } else {\n ;({ stop: stopResizeObserver } = useResizeObserver(resize$, update))\n stopResizeListener = useEventListener('resize', update)\n }\n },\n { immediate: true }\n )\n\n watch(\n () => [props.maxHeight, props.height],\n () => {\n if (!props.native)\n nextTick(() => {\n update()\n if (wrap$.value) {\n barRef.value?.handleScroll(wrap$.value)\n }\n })\n }\n )\n\n provide(\n scrollbarContextKey,\n reactive({\n scrollbarElement: scrollbar$,\n wrapElement: wrap$,\n })\n )\n\n onMounted(() => {\n if (!props.native) nextTick(() => update())\n })\n\n return {\n ns,\n scrollbar$,\n wrap$,\n resize$,\n barRef,\n moveX,\n moveY,\n ratioX,\n ratioY,\n sizeWidth,\n sizeHeight,\n style,\n update,\n handleScroll,\n setScrollTop,\n setScrollLeft,\n }\n },\n})\n</script>\n"],"names":["defineComponent","Bar","scrollbarProps","scrollbarEmits","useNamespace","ref","style","computed","addUnit","isNumber","debugWarn","watch","useEventListener","nextTick","provide","scrollbarContextKey","reactive","onMounted","_resolveComponent","_openBlock","_normalizeClass","_createElementVNode","_normalizeStyle","_createBlock","_resolveDynamicComponent","_withCtx","_renderSlot"],"mappings":"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"}
@@ -51,7 +51,7 @@ declare const _default: import("vue").DefineComponent<{
51
51
  readonly ratio: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, true, unknown, unknown>;
52
52
  readonly always: BooleanConstructor;
53
53
  }>>, {
54
- always: boolean;
55
54
  vertical: boolean;
55
+ always: boolean;
56
56
  }>;
57
57
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"thumb2.js","sources":["../../../../../../packages/components/scrollbar/src/thumb.vue"],"sourcesContent":["<template>\n <transition :name=\"ns.b('fade')\">\n <div\n v-show=\"always || visible\"\n ref=\"instance\"\n :class=\"[ns.e('bar'), ns.is(bar.key)]\"\n @mousedown=\"clickTrackHandler\"\n >\n <div\n ref=\"thumb\"\n :class=\"ns.e('thumb')\"\n :style=\"thumbStyle\"\n @mousedown=\"clickThumbHandler\"\n ></div>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n onBeforeUnmount,\n ref,\n toRef,\n} from 'vue'\nimport { useEventListener, isClient } from '@vueuse/core'\nimport { scrollbarContextKey } from '@element-plus/tokens'\nimport { throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { BAR_MAP, renderThumbStyle } from './util'\n\nimport { thumbProps } from './thumb'\n\nconst COMPONENT_NAME = 'Thumb'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: thumbProps,\n\n setup(props) {\n const scrollbar = inject(scrollbarContextKey)\n const ns = useNamespace('scrollbar')\n\n if (!scrollbar)\n throwError(COMPONENT_NAME, 'can not inject scrollbar context')\n\n const instance = ref<HTMLDivElement>()\n const thumb = ref<HTMLDivElement>()\n\n const thumbState = ref({})\n const visible = ref(false)\n\n let cursorDown = false\n let cursorLeave = false\n let originalOnSelectStart:\n | ((this: GlobalEventHandlers, ev: Event) => any)\n | null = isClient ? document.onselectstart : null\n\n const bar = computed(\n () => BAR_MAP[props.vertical ? 'vertical' : 'horizontal']\n )\n\n const thumbStyle = computed(() =>\n renderThumbStyle({\n size: props.size,\n move: props.move,\n bar: bar.value,\n })\n )\n\n const offsetRatio = computed(\n () =>\n // offsetRatioX = original width of thumb / current width of thumb / ratioX\n // offsetRatioY = original height of thumb / current height of thumb / ratioY\n // instance height = wrap height - GAP\n instance.value![bar.value.offset] ** 2 /\n scrollbar.wrapElement![bar.value.scrollSize] /\n props.ratio /\n thumb.value![bar.value.offset]\n )\n\n const clickThumbHandler = (e: MouseEvent) => {\n // prevent click event of middle and right button\n e.stopPropagation()\n if (e.ctrlKey || [1, 2].includes(e.button)) return\n\n window.getSelection()?.removeAllRanges()\n startDrag(e)\n\n const el = e.currentTarget as HTMLDivElement\n if (!el) return\n thumbState.value[bar.value.axis] =\n el[bar.value.offset] -\n (e[bar.value.client] - el.getBoundingClientRect()[bar.value.direction])\n }\n\n const clickTrackHandler = (e: MouseEvent) => {\n if (!thumb.value || !instance.value || !scrollbar.wrapElement) return\n\n const offset = Math.abs(\n (e.target as HTMLElement).getBoundingClientRect()[bar.value.direction] -\n e[bar.value.client]\n )\n const thumbHalf = thumb.value[bar.value.offset] / 2\n const thumbPositionPercentage =\n ((offset - thumbHalf) * 100 * offsetRatio.value) /\n instance.value[bar.value.offset]\n\n scrollbar.wrapElement[bar.value.scroll] =\n (thumbPositionPercentage *\n scrollbar.wrapElement[bar.value.scrollSize]) /\n 100\n }\n\n const startDrag = (e: MouseEvent) => {\n e.stopImmediatePropagation()\n cursorDown = true\n document.addEventListener('mousemove', mouseMoveDocumentHandler)\n document.addEventListener('mouseup', mouseUpDocumentHandler)\n originalOnSelectStart = document.onselectstart\n document.onselectstart = () => false\n }\n\n const mouseMoveDocumentHandler = (e: MouseEvent) => {\n if (!instance.value || !thumb.value) return\n if (cursorDown === false) return\n\n const prevPage = thumbState.value[bar.value.axis]\n if (!prevPage) return\n\n const offset =\n (instance.value.getBoundingClientRect()[bar.value.direction] -\n e[bar.value.client]) *\n -1\n const thumbClickPosition = thumb.value[bar.value.offset] - prevPage\n const thumbPositionPercentage =\n ((offset - thumbClickPosition) * 100 * offsetRatio.value) /\n instance.value[bar.value.offset]\n scrollbar.wrapElement[bar.value.scroll] =\n (thumbPositionPercentage *\n scrollbar.wrapElement[bar.value.scrollSize]) /\n 100\n }\n\n const mouseUpDocumentHandler = () => {\n cursorDown = false\n thumbState.value[bar.value.axis] = 0\n document.removeEventListener('mousemove', mouseMoveDocumentHandler)\n document.removeEventListener('mouseup', mouseUpDocumentHandler)\n restoreOnselectstart()\n if (cursorLeave) visible.value = false\n }\n\n const mouseMoveScrollbarHandler = () => {\n cursorLeave = false\n visible.value = !!props.size\n }\n\n const mouseLeaveScrollbarHandler = () => {\n cursorLeave = true\n visible.value = cursorDown\n }\n\n onBeforeUnmount(() => {\n restoreOnselectstart()\n document.removeEventListener('mouseup', mouseUpDocumentHandler)\n })\n\n const restoreOnselectstart = () => {\n if (document.onselectstart !== originalOnSelectStart)\n document.onselectstart = originalOnSelectStart\n }\n\n useEventListener(\n toRef(scrollbar, 'scrollbarElement'),\n 'mousemove',\n mouseMoveScrollbarHandler\n )\n useEventListener(\n toRef(scrollbar, 'scrollbarElement'),\n 'mouseleave',\n mouseLeaveScrollbarHandler\n )\n\n return {\n ns,\n instance,\n thumb,\n bar,\n thumbStyle,\n visible,\n clickTrackHandler,\n clickThumbHandler,\n }\n },\n})\n</script>\n"],"names":["defineComponent","thumbProps","scrollbar","inject","scrollbarContextKey","useNamespace","throwError","ref","isClient","computed","BAR_MAP","renderThumbStyle","onBeforeUnmount","useEventListener","toRef","_openBlock","_createBlock","_Transition","_withCtx","_withDirectives","_createElementVNode","_normalizeClass","_vShow"],"mappings":"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"}
1
+ {"version":3,"file":"thumb2.js","sources":["../../../../../../packages/components/scrollbar/src/thumb.vue"],"sourcesContent":["<template>\n <transition :name=\"ns.b('fade')\">\n <div\n v-show=\"always || visible\"\n ref=\"instance\"\n :class=\"[ns.e('bar'), ns.is(bar.key)]\"\n @mousedown=\"clickTrackHandler\"\n >\n <div\n ref=\"thumb\"\n :class=\"ns.e('thumb')\"\n :style=\"thumbStyle\"\n @mousedown=\"clickThumbHandler\"\n />\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n onBeforeUnmount,\n ref,\n toRef,\n} from 'vue'\nimport { useEventListener, isClient } from '@vueuse/core'\nimport { scrollbarContextKey } from '@element-plus/tokens'\nimport { throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { BAR_MAP, renderThumbStyle } from './util'\n\nimport { thumbProps } from './thumb'\n\nconst COMPONENT_NAME = 'Thumb'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: thumbProps,\n\n setup(props) {\n const scrollbar = inject(scrollbarContextKey)\n const ns = useNamespace('scrollbar')\n\n if (!scrollbar)\n throwError(COMPONENT_NAME, 'can not inject scrollbar context')\n\n const instance = ref<HTMLDivElement>()\n const thumb = ref<HTMLDivElement>()\n\n const thumbState = ref({})\n const visible = ref(false)\n\n let cursorDown = false\n let cursorLeave = false\n let originalOnSelectStart:\n | ((this: GlobalEventHandlers, ev: Event) => any)\n | null = isClient ? document.onselectstart : null\n\n const bar = computed(\n () => BAR_MAP[props.vertical ? 'vertical' : 'horizontal']\n )\n\n const thumbStyle = computed(() =>\n renderThumbStyle({\n size: props.size,\n move: props.move,\n bar: bar.value,\n })\n )\n\n const offsetRatio = computed(\n () =>\n // offsetRatioX = original width of thumb / current width of thumb / ratioX\n // offsetRatioY = original height of thumb / current height of thumb / ratioY\n // instance height = wrap height - GAP\n instance.value![bar.value.offset] ** 2 /\n scrollbar.wrapElement![bar.value.scrollSize] /\n props.ratio /\n thumb.value![bar.value.offset]\n )\n\n const clickThumbHandler = (e: MouseEvent) => {\n // prevent click event of middle and right button\n e.stopPropagation()\n if (e.ctrlKey || [1, 2].includes(e.button)) return\n\n window.getSelection()?.removeAllRanges()\n startDrag(e)\n\n const el = e.currentTarget as HTMLDivElement\n if (!el) return\n thumbState.value[bar.value.axis] =\n el[bar.value.offset] -\n (e[bar.value.client] - el.getBoundingClientRect()[bar.value.direction])\n }\n\n const clickTrackHandler = (e: MouseEvent) => {\n if (!thumb.value || !instance.value || !scrollbar.wrapElement) return\n\n const offset = Math.abs(\n (e.target as HTMLElement).getBoundingClientRect()[bar.value.direction] -\n e[bar.value.client]\n )\n const thumbHalf = thumb.value[bar.value.offset] / 2\n const thumbPositionPercentage =\n ((offset - thumbHalf) * 100 * offsetRatio.value) /\n instance.value[bar.value.offset]\n\n scrollbar.wrapElement[bar.value.scroll] =\n (thumbPositionPercentage *\n scrollbar.wrapElement[bar.value.scrollSize]) /\n 100\n }\n\n const startDrag = (e: MouseEvent) => {\n e.stopImmediatePropagation()\n cursorDown = true\n document.addEventListener('mousemove', mouseMoveDocumentHandler)\n document.addEventListener('mouseup', mouseUpDocumentHandler)\n originalOnSelectStart = document.onselectstart\n document.onselectstart = () => false\n }\n\n const mouseMoveDocumentHandler = (e: MouseEvent) => {\n if (!instance.value || !thumb.value) return\n if (cursorDown === false) return\n\n const prevPage = thumbState.value[bar.value.axis]\n if (!prevPage) return\n\n const offset =\n (instance.value.getBoundingClientRect()[bar.value.direction] -\n e[bar.value.client]) *\n -1\n const thumbClickPosition = thumb.value[bar.value.offset] - prevPage\n const thumbPositionPercentage =\n ((offset - thumbClickPosition) * 100 * offsetRatio.value) /\n instance.value[bar.value.offset]\n scrollbar.wrapElement[bar.value.scroll] =\n (thumbPositionPercentage *\n scrollbar.wrapElement[bar.value.scrollSize]) /\n 100\n }\n\n const mouseUpDocumentHandler = () => {\n cursorDown = false\n thumbState.value[bar.value.axis] = 0\n document.removeEventListener('mousemove', mouseMoveDocumentHandler)\n document.removeEventListener('mouseup', mouseUpDocumentHandler)\n restoreOnselectstart()\n if (cursorLeave) visible.value = false\n }\n\n const mouseMoveScrollbarHandler = () => {\n cursorLeave = false\n visible.value = !!props.size\n }\n\n const mouseLeaveScrollbarHandler = () => {\n cursorLeave = true\n visible.value = cursorDown\n }\n\n onBeforeUnmount(() => {\n restoreOnselectstart()\n document.removeEventListener('mouseup', mouseUpDocumentHandler)\n })\n\n const restoreOnselectstart = () => {\n if (document.onselectstart !== originalOnSelectStart)\n document.onselectstart = originalOnSelectStart\n }\n\n useEventListener(\n toRef(scrollbar, 'scrollbarElement'),\n 'mousemove',\n mouseMoveScrollbarHandler\n )\n useEventListener(\n toRef(scrollbar, 'scrollbarElement'),\n 'mouseleave',\n mouseLeaveScrollbarHandler\n )\n\n return {\n ns,\n instance,\n thumb,\n bar,\n thumbStyle,\n visible,\n clickTrackHandler,\n clickThumbHandler,\n }\n },\n})\n</script>\n"],"names":["defineComponent","thumbProps","scrollbar","inject","scrollbarContextKey","useNamespace","throwError","ref","isClient","computed","BAR_MAP","renderThumbStyle","onBeforeUnmount","useEventListener","toRef","_openBlock","_createBlock","_Transition","_withCtx","_withDirectives","_createElementVNode","_normalizeClass","_vShow"],"mappings":"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"}