element-plus 2.2.18 → 2.2.19

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 (533) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +873 -858
  4. package/dist/index.full.min.js +20 -20
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +21 -21
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +874 -859
  9. package/dist/locale/af.js +1 -1
  10. package/dist/locale/af.min.js +1 -1
  11. package/dist/locale/af.min.mjs +1 -1
  12. package/dist/locale/af.mjs +1 -1
  13. package/dist/locale/ar.js +1 -1
  14. package/dist/locale/ar.min.js +1 -1
  15. package/dist/locale/ar.min.mjs +1 -1
  16. package/dist/locale/ar.mjs +1 -1
  17. package/dist/locale/az.js +1 -1
  18. package/dist/locale/az.min.js +1 -1
  19. package/dist/locale/az.min.mjs +1 -1
  20. package/dist/locale/az.mjs +1 -1
  21. package/dist/locale/bg.js +1 -1
  22. package/dist/locale/bg.min.js +1 -1
  23. package/dist/locale/bg.min.mjs +1 -1
  24. package/dist/locale/bg.mjs +1 -1
  25. package/dist/locale/bn.js +1 -1
  26. package/dist/locale/bn.min.js +1 -1
  27. package/dist/locale/bn.min.mjs +1 -1
  28. package/dist/locale/bn.mjs +1 -1
  29. package/dist/locale/ca.js +1 -1
  30. package/dist/locale/ca.min.js +1 -1
  31. package/dist/locale/ca.min.mjs +1 -1
  32. package/dist/locale/ca.mjs +1 -1
  33. package/dist/locale/cs.js +1 -1
  34. package/dist/locale/cs.min.js +1 -1
  35. package/dist/locale/cs.min.mjs +1 -1
  36. package/dist/locale/cs.mjs +1 -1
  37. package/dist/locale/da.js +1 -1
  38. package/dist/locale/da.min.js +1 -1
  39. package/dist/locale/da.min.mjs +1 -1
  40. package/dist/locale/da.mjs +1 -1
  41. package/dist/locale/de.js +1 -1
  42. package/dist/locale/de.min.js +1 -1
  43. package/dist/locale/de.min.mjs +1 -1
  44. package/dist/locale/de.mjs +1 -1
  45. package/dist/locale/el.js +1 -1
  46. package/dist/locale/el.min.js +1 -1
  47. package/dist/locale/el.min.mjs +1 -1
  48. package/dist/locale/el.mjs +1 -1
  49. package/dist/locale/en.js +1 -1
  50. package/dist/locale/en.min.js +1 -1
  51. package/dist/locale/en.min.mjs +1 -1
  52. package/dist/locale/en.mjs +1 -1
  53. package/dist/locale/eo.js +1 -1
  54. package/dist/locale/eo.min.js +1 -1
  55. package/dist/locale/eo.min.mjs +1 -1
  56. package/dist/locale/eo.mjs +1 -1
  57. package/dist/locale/es.js +1 -1
  58. package/dist/locale/es.min.js +1 -1
  59. package/dist/locale/es.min.mjs +1 -1
  60. package/dist/locale/es.mjs +1 -1
  61. package/dist/locale/et.js +1 -1
  62. package/dist/locale/et.min.js +1 -1
  63. package/dist/locale/et.min.mjs +1 -1
  64. package/dist/locale/et.mjs +1 -1
  65. package/dist/locale/eu.js +1 -1
  66. package/dist/locale/eu.min.js +1 -1
  67. package/dist/locale/eu.min.mjs +1 -1
  68. package/dist/locale/eu.mjs +1 -1
  69. package/dist/locale/fa.js +1 -1
  70. package/dist/locale/fa.min.js +1 -1
  71. package/dist/locale/fa.min.mjs +1 -1
  72. package/dist/locale/fa.mjs +1 -1
  73. package/dist/locale/fi.js +1 -1
  74. package/dist/locale/fi.min.js +1 -1
  75. package/dist/locale/fi.min.mjs +1 -1
  76. package/dist/locale/fi.mjs +1 -1
  77. package/dist/locale/fr.js +1 -1
  78. package/dist/locale/fr.min.js +1 -1
  79. package/dist/locale/fr.min.mjs +1 -1
  80. package/dist/locale/fr.mjs +1 -1
  81. package/dist/locale/he.js +1 -1
  82. package/dist/locale/he.min.js +1 -1
  83. package/dist/locale/he.min.mjs +1 -1
  84. package/dist/locale/he.mjs +1 -1
  85. package/dist/locale/hr.js +1 -1
  86. package/dist/locale/hr.min.js +1 -1
  87. package/dist/locale/hr.min.mjs +1 -1
  88. package/dist/locale/hr.mjs +1 -1
  89. package/dist/locale/hu.js +1 -1
  90. package/dist/locale/hu.min.js +1 -1
  91. package/dist/locale/hu.min.mjs +1 -1
  92. package/dist/locale/hu.mjs +1 -1
  93. package/dist/locale/hy-am.js +1 -1
  94. package/dist/locale/hy-am.min.js +1 -1
  95. package/dist/locale/hy-am.min.mjs +1 -1
  96. package/dist/locale/hy-am.mjs +1 -1
  97. package/dist/locale/id.js +1 -1
  98. package/dist/locale/id.min.js +1 -1
  99. package/dist/locale/id.min.mjs +1 -1
  100. package/dist/locale/id.mjs +1 -1
  101. package/dist/locale/it.js +1 -1
  102. package/dist/locale/it.min.js +1 -1
  103. package/dist/locale/it.min.mjs +1 -1
  104. package/dist/locale/it.mjs +1 -1
  105. package/dist/locale/ja.js +1 -1
  106. package/dist/locale/ja.min.js +1 -1
  107. package/dist/locale/ja.min.mjs +1 -1
  108. package/dist/locale/ja.mjs +1 -1
  109. package/dist/locale/kk.js +1 -1
  110. package/dist/locale/kk.min.js +1 -1
  111. package/dist/locale/kk.min.mjs +1 -1
  112. package/dist/locale/kk.mjs +1 -1
  113. package/dist/locale/km.js +1 -1
  114. package/dist/locale/km.min.js +1 -1
  115. package/dist/locale/km.min.mjs +1 -1
  116. package/dist/locale/km.mjs +1 -1
  117. package/dist/locale/ko.js +1 -1
  118. package/dist/locale/ko.min.js +1 -1
  119. package/dist/locale/ko.min.mjs +1 -1
  120. package/dist/locale/ko.mjs +1 -1
  121. package/dist/locale/ku.js +1 -1
  122. package/dist/locale/ku.min.js +1 -1
  123. package/dist/locale/ku.min.mjs +1 -1
  124. package/dist/locale/ku.mjs +1 -1
  125. package/dist/locale/ky.js +1 -1
  126. package/dist/locale/ky.min.js +1 -1
  127. package/dist/locale/ky.min.mjs +1 -1
  128. package/dist/locale/ky.mjs +1 -1
  129. package/dist/locale/lt.js +1 -1
  130. package/dist/locale/lt.min.js +1 -1
  131. package/dist/locale/lt.min.mjs +1 -1
  132. package/dist/locale/lt.mjs +1 -1
  133. package/dist/locale/lv.js +1 -1
  134. package/dist/locale/lv.min.js +1 -1
  135. package/dist/locale/lv.min.mjs +1 -1
  136. package/dist/locale/lv.mjs +1 -1
  137. package/dist/locale/mg.js +1 -1
  138. package/dist/locale/mg.min.js +1 -1
  139. package/dist/locale/mg.min.mjs +1 -1
  140. package/dist/locale/mg.mjs +1 -1
  141. package/dist/locale/mn.js +1 -1
  142. package/dist/locale/mn.min.js +1 -1
  143. package/dist/locale/mn.min.mjs +1 -1
  144. package/dist/locale/mn.mjs +1 -1
  145. package/dist/locale/nb-no.js +1 -1
  146. package/dist/locale/nb-no.min.js +1 -1
  147. package/dist/locale/nb-no.min.mjs +1 -1
  148. package/dist/locale/nb-no.mjs +1 -1
  149. package/dist/locale/nl.js +1 -1
  150. package/dist/locale/nl.min.js +1 -1
  151. package/dist/locale/nl.min.mjs +1 -1
  152. package/dist/locale/nl.mjs +1 -1
  153. package/dist/locale/pa.js +1 -1
  154. package/dist/locale/pa.min.js +1 -1
  155. package/dist/locale/pa.min.mjs +1 -1
  156. package/dist/locale/pa.mjs +1 -1
  157. package/dist/locale/pl.js +1 -1
  158. package/dist/locale/pl.min.js +1 -1
  159. package/dist/locale/pl.min.mjs +1 -1
  160. package/dist/locale/pl.mjs +1 -1
  161. package/dist/locale/pt-br.js +1 -1
  162. package/dist/locale/pt-br.min.js +1 -1
  163. package/dist/locale/pt-br.min.mjs +1 -1
  164. package/dist/locale/pt-br.mjs +1 -1
  165. package/dist/locale/pt.js +1 -1
  166. package/dist/locale/pt.min.js +1 -1
  167. package/dist/locale/pt.min.mjs +1 -1
  168. package/dist/locale/pt.mjs +1 -1
  169. package/dist/locale/ro.js +1 -1
  170. package/dist/locale/ro.min.js +1 -1
  171. package/dist/locale/ro.min.mjs +1 -1
  172. package/dist/locale/ro.mjs +1 -1
  173. package/dist/locale/ru.js +1 -1
  174. package/dist/locale/ru.min.js +1 -1
  175. package/dist/locale/ru.min.mjs +1 -1
  176. package/dist/locale/ru.mjs +1 -1
  177. package/dist/locale/sk.js +1 -1
  178. package/dist/locale/sk.min.js +1 -1
  179. package/dist/locale/sk.min.mjs +1 -1
  180. package/dist/locale/sk.mjs +1 -1
  181. package/dist/locale/sl.js +1 -1
  182. package/dist/locale/sl.min.js +1 -1
  183. package/dist/locale/sl.min.mjs +1 -1
  184. package/dist/locale/sl.mjs +1 -1
  185. package/dist/locale/sr.js +1 -1
  186. package/dist/locale/sr.min.js +1 -1
  187. package/dist/locale/sr.min.mjs +1 -1
  188. package/dist/locale/sr.mjs +1 -1
  189. package/dist/locale/sv.js +1 -1
  190. package/dist/locale/sv.min.js +1 -1
  191. package/dist/locale/sv.min.mjs +1 -1
  192. package/dist/locale/sv.mjs +1 -1
  193. package/dist/locale/ta.js +1 -1
  194. package/dist/locale/ta.min.js +1 -1
  195. package/dist/locale/ta.min.mjs +1 -1
  196. package/dist/locale/ta.mjs +1 -1
  197. package/dist/locale/th.js +1 -1
  198. package/dist/locale/th.min.js +1 -1
  199. package/dist/locale/th.min.mjs +1 -1
  200. package/dist/locale/th.mjs +1 -1
  201. package/dist/locale/tk.js +1 -1
  202. package/dist/locale/tk.min.js +1 -1
  203. package/dist/locale/tk.min.mjs +1 -1
  204. package/dist/locale/tk.mjs +1 -1
  205. package/dist/locale/tr.js +1 -1
  206. package/dist/locale/tr.min.js +1 -1
  207. package/dist/locale/tr.min.mjs +1 -1
  208. package/dist/locale/tr.mjs +1 -1
  209. package/dist/locale/ug-cn.js +1 -1
  210. package/dist/locale/ug-cn.min.js +1 -1
  211. package/dist/locale/ug-cn.min.mjs +1 -1
  212. package/dist/locale/ug-cn.mjs +1 -1
  213. package/dist/locale/uk.js +1 -1
  214. package/dist/locale/uk.min.js +1 -1
  215. package/dist/locale/uk.min.mjs +1 -1
  216. package/dist/locale/uk.mjs +1 -1
  217. package/dist/locale/uz-uz.js +1 -1
  218. package/dist/locale/uz-uz.min.js +1 -1
  219. package/dist/locale/uz-uz.min.mjs +1 -1
  220. package/dist/locale/uz-uz.mjs +1 -1
  221. package/dist/locale/vi.js +1 -1
  222. package/dist/locale/vi.min.js +1 -1
  223. package/dist/locale/vi.min.mjs +1 -1
  224. package/dist/locale/vi.mjs +1 -1
  225. package/dist/locale/zh-cn.js +1 -1
  226. package/dist/locale/zh-cn.min.js +1 -1
  227. package/dist/locale/zh-cn.min.mjs +1 -1
  228. package/dist/locale/zh-cn.mjs +1 -1
  229. package/dist/locale/zh-tw.js +1 -1
  230. package/dist/locale/zh-tw.min.js +1 -1
  231. package/dist/locale/zh-tw.min.mjs +1 -1
  232. package/dist/locale/zh-tw.mjs +1 -1
  233. package/es/components/autocomplete/index.d.ts +53 -45
  234. package/es/components/autocomplete/src/autocomplete.d.ts +1 -3
  235. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  236. package/es/components/autocomplete/src/autocomplete.vue.d.ts +53 -45
  237. package/es/components/backtop/index.d.ts +2 -6
  238. package/es/components/backtop/index.mjs.map +1 -1
  239. package/es/components/backtop/src/backtop.d.ts +0 -2
  240. package/es/components/backtop/src/backtop.mjs.map +1 -1
  241. package/es/components/backtop/src/backtop.vue.d.ts +5 -10
  242. package/es/components/backtop/src/backtop2.mjs +6 -52
  243. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  244. package/es/components/backtop/src/instance.d.ts +2 -0
  245. package/es/components/backtop/src/instance.mjs +2 -0
  246. package/es/components/backtop/src/instance.mjs.map +1 -0
  247. package/es/components/backtop/src/use-backtop.d.ts +6 -0
  248. package/es/components/backtop/src/use-backtop.mjs +58 -0
  249. package/es/components/backtop/src/use-backtop.mjs.map +1 -0
  250. package/es/components/button/index.d.ts +4 -10
  251. package/es/components/button/index.mjs.map +1 -1
  252. package/es/components/button/src/button-group.d.ts +0 -2
  253. package/es/components/button/src/button-group.mjs.map +1 -1
  254. package/es/components/button/src/button.d.ts +0 -2
  255. package/es/components/button/src/button.mjs.map +1 -1
  256. package/es/components/button/src/button.vue.d.ts +3 -10
  257. package/es/components/button/src/button2.mjs +5 -46
  258. package/es/components/button/src/button2.mjs.map +1 -1
  259. package/es/components/button/src/instance.d.ts +4 -0
  260. package/es/components/button/src/instance.mjs +2 -0
  261. package/es/components/button/src/instance.mjs.map +1 -0
  262. package/es/components/button/src/use-button.d.ts +10 -0
  263. package/es/components/button/src/use-button.mjs +59 -0
  264. package/es/components/button/src/use-button.mjs.map +1 -0
  265. package/es/components/calendar/index.d.ts +39 -58
  266. package/es/components/calendar/index.mjs.map +1 -1
  267. package/es/components/calendar/src/calendar.d.ts +0 -2
  268. package/es/components/calendar/src/calendar.mjs.map +1 -1
  269. package/es/components/calendar/src/calendar.vue.d.ts +101 -125
  270. package/es/components/calendar/src/calendar2.mjs +19 -134
  271. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  272. package/es/components/calendar/src/date-table.d.ts +0 -2
  273. package/es/components/calendar/src/date-table.mjs.map +1 -1
  274. package/es/components/calendar/src/date-table.vue.d.ts +26 -31
  275. package/es/components/calendar/src/date-table2.mjs +14 -82
  276. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  277. package/es/components/calendar/src/instance.d.ts +5 -0
  278. package/es/components/calendar/src/instance.mjs +2 -0
  279. package/es/components/calendar/src/instance.mjs.map +1 -0
  280. package/es/components/calendar/src/use-calendar.d.ts +14 -0
  281. package/es/components/calendar/src/use-calendar.mjs +140 -0
  282. package/es/components/calendar/src/use-calendar.mjs.map +1 -0
  283. package/es/components/calendar/src/use-date-table.d.ts +18 -0
  284. package/es/components/calendar/src/use-date-table.mjs +96 -0
  285. package/es/components/calendar/src/use-date-table.mjs.map +1 -0
  286. package/es/components/cascader/index.d.ts +62 -44
  287. package/es/components/cascader/src/index.mjs +2 -2
  288. package/es/components/cascader/src/index.mjs.map +1 -1
  289. package/es/components/cascader/src/index.vue.d.ts +31 -22
  290. package/es/components/cascader-panel/src/index.mjs +5 -3
  291. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  292. package/es/components/color-picker/index.d.ts +21 -21
  293. package/es/components/color-picker/index.mjs +2 -2
  294. package/es/components/color-picker/src/color-picker.mjs +38 -317
  295. package/es/components/color-picker/src/color-picker.mjs.map +1 -1
  296. package/es/components/color-picker/src/color-picker.vue.d.ts +21 -21
  297. package/es/components/color-picker/src/color-picker2.mjs +317 -38
  298. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  299. package/es/components/color-picker/src/components/predefine.mjs +1 -1
  300. package/es/components/date-picker/src/composables/use-range-picker.d.ts +1 -1
  301. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +6 -6
  302. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +45 -45
  303. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +47 -47
  304. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +3 -3
  305. package/es/components/date-picker/src/panel-utils.d.ts +95 -95
  306. package/es/components/dialog/index.d.ts +1 -0
  307. package/es/components/dialog/src/dialog.vue.d.ts +1 -0
  308. package/es/components/dialog/src/dialog2.mjs +4 -2
  309. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  310. package/es/components/dialog/src/use-dialog.d.ts +1 -0
  311. package/es/components/dialog/src/use-dialog.mjs +7 -0
  312. package/es/components/dialog/src/use-dialog.mjs.map +1 -1
  313. package/es/components/drawer/index.d.ts +1 -0
  314. package/es/components/drawer/src/drawer.vue.d.ts +1 -0
  315. package/es/components/index.mjs +1 -1
  316. package/es/components/input/index.d.ts +18 -11
  317. package/es/components/input/src/input.d.ts +6 -1
  318. package/es/components/input/src/input.mjs +1 -2
  319. package/es/components/input/src/input.mjs.map +1 -1
  320. package/es/components/input/src/input.vue.d.ts +18 -11
  321. package/es/components/input/src/input2.mjs +5 -32
  322. package/es/components/input/src/input2.mjs.map +1 -1
  323. package/es/components/input-number/index.d.ts +49 -33
  324. package/es/components/input-number/src/input-number.vue.d.ts +49 -33
  325. package/es/components/message-box/src/message-box.type.d.ts +2 -0
  326. package/es/components/message-box/src/messageBox.mjs +20 -3
  327. package/es/components/message-box/src/messageBox.mjs.map +1 -1
  328. package/es/components/pagination/src/components/jumper.vue.d.ts +18 -11
  329. package/es/components/popconfirm/index.d.ts +3 -10
  330. package/es/components/popconfirm/src/popconfirm.vue.d.ts +3 -10
  331. package/es/components/skeleton/index.d.ts +1 -1
  332. package/es/components/skeleton/src/skeleton.vue.d.ts +1 -1
  333. package/es/components/slider/index.d.ts +49 -33
  334. package/es/components/slider/src/slider.vue.d.ts +49 -33
  335. package/es/components/switch/src/switch2.mjs +15 -34
  336. package/es/components/switch/src/switch2.mjs.map +1 -1
  337. package/es/components/table/src/table/style-helper.mjs +1 -1
  338. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  339. package/es/components/table/src/table-body/render-helper.mjs +1 -1
  340. package/es/components/table/src/table-body/render-helper.mjs.map +1 -1
  341. package/es/components/table/src/table-body/styles-helper.d.ts +1 -1
  342. package/es/components/table/src/table-body/styles-helper.mjs +2 -2
  343. package/es/components/table/src/table-body/styles-helper.mjs.map +1 -1
  344. package/es/components/table/src/util.d.ts +1 -1
  345. package/es/components/table/src/util.mjs +3 -3
  346. package/es/components/table/src/util.mjs.map +1 -1
  347. package/es/components/table-v2/src/composables/use-styles.d.ts +1 -0
  348. package/es/components/table-v2/src/composables/use-styles.mjs +2 -1
  349. package/es/components/table-v2/src/composables/use-styles.mjs.map +1 -1
  350. package/es/components/table-v2/src/use-table.mjs +3 -2
  351. package/es/components/table-v2/src/use-table.mjs.map +1 -1
  352. package/es/components/time-picker/src/common/picker.mjs +2 -0
  353. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  354. package/es/components/time-picker/src/common/picker.vue.d.ts +18 -11
  355. package/es/components/time-picker/src/composables/use-time-picker.d.ts +2 -2
  356. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +5 -5
  357. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +17 -17
  358. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +17 -17
  359. package/es/components/transfer/index.d.ts +93 -65
  360. package/es/components/transfer/src/transfer-panel.vue.d.ts +18 -11
  361. package/es/components/transfer/src/transfer.vue.d.ts +93 -65
  362. package/es/components/tree-v2/index.d.ts +868 -3
  363. package/es/components/tree-v2/src/composables/useCheck.d.ts +2 -1
  364. package/es/components/tree-v2/src/composables/useCheck.mjs.map +1 -1
  365. package/es/components/tree-v2/src/composables/useTree.d.ts +6 -3
  366. package/es/components/tree-v2/src/composables/useTree.mjs +1 -1
  367. package/es/components/tree-v2/src/composables/useTree.mjs.map +1 -1
  368. package/es/components/tree-v2/src/tree-node.mjs +63 -78
  369. package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
  370. package/es/components/tree-v2/src/tree-node.vue.d.ts +566 -3
  371. package/es/components/tree-v2/src/tree.mjs +62 -75
  372. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  373. package/es/components/tree-v2/src/tree.vue.d.ts +868 -3
  374. package/es/components/tree-v2/src/types.d.ts +1 -1
  375. package/es/components/tree-v2/src/virtual-tree.d.ts +3 -2
  376. package/es/components/tree-v2/src/virtual-tree.mjs.map +1 -1
  377. package/es/index.mjs +1 -1
  378. package/es/version.d.ts +1 -1
  379. package/es/version.mjs +1 -1
  380. package/es/version.mjs.map +1 -1
  381. package/lib/components/autocomplete/index.d.ts +53 -45
  382. package/lib/components/autocomplete/src/autocomplete.d.ts +1 -3
  383. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  384. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +53 -45
  385. package/lib/components/backtop/index.d.ts +2 -6
  386. package/lib/components/backtop/index.js.map +1 -1
  387. package/lib/components/backtop/src/backtop.d.ts +0 -2
  388. package/lib/components/backtop/src/backtop.js.map +1 -1
  389. package/lib/components/backtop/src/backtop.vue.d.ts +5 -10
  390. package/lib/components/backtop/src/backtop2.js +5 -51
  391. package/lib/components/backtop/src/backtop2.js.map +1 -1
  392. package/lib/components/backtop/src/instance.d.ts +2 -0
  393. package/lib/components/backtop/src/instance.js +3 -0
  394. package/lib/components/backtop/src/instance.js.map +1 -0
  395. package/lib/components/backtop/src/use-backtop.d.ts +6 -0
  396. package/lib/components/backtop/src/use-backtop.js +62 -0
  397. package/lib/components/backtop/src/use-backtop.js.map +1 -0
  398. package/lib/components/button/index.d.ts +4 -10
  399. package/lib/components/button/index.js.map +1 -1
  400. package/lib/components/button/src/button-group.d.ts +0 -2
  401. package/lib/components/button/src/button-group.js.map +1 -1
  402. package/lib/components/button/src/button.d.ts +0 -2
  403. package/lib/components/button/src/button.js.map +1 -1
  404. package/lib/components/button/src/button.vue.d.ts +3 -10
  405. package/lib/components/button/src/button2.js +8 -49
  406. package/lib/components/button/src/button2.js.map +1 -1
  407. package/lib/components/button/src/instance.d.ts +4 -0
  408. package/lib/components/button/src/instance.js +3 -0
  409. package/lib/components/button/src/instance.js.map +1 -0
  410. package/lib/components/button/src/use-button.d.ts +10 -0
  411. package/lib/components/button/src/use-button.js +63 -0
  412. package/lib/components/button/src/use-button.js.map +1 -0
  413. package/lib/components/calendar/index.d.ts +39 -58
  414. package/lib/components/calendar/index.js.map +1 -1
  415. package/lib/components/calendar/src/calendar.d.ts +0 -2
  416. package/lib/components/calendar/src/calendar.js.map +1 -1
  417. package/lib/components/calendar/src/calendar.vue.d.ts +101 -125
  418. package/lib/components/calendar/src/calendar2.js +23 -142
  419. package/lib/components/calendar/src/calendar2.js.map +1 -1
  420. package/lib/components/calendar/src/date-table.d.ts +0 -2
  421. package/lib/components/calendar/src/date-table.js.map +1 -1
  422. package/lib/components/calendar/src/date-table.vue.d.ts +26 -31
  423. package/lib/components/calendar/src/date-table2.js +15 -88
  424. package/lib/components/calendar/src/date-table2.js.map +1 -1
  425. package/lib/components/calendar/src/instance.d.ts +5 -0
  426. package/lib/components/calendar/src/instance.js +3 -0
  427. package/lib/components/calendar/src/instance.js.map +1 -0
  428. package/lib/components/calendar/src/use-calendar.d.ts +14 -0
  429. package/lib/components/calendar/src/use-calendar.js +148 -0
  430. package/lib/components/calendar/src/use-calendar.js.map +1 -0
  431. package/lib/components/calendar/src/use-date-table.d.ts +18 -0
  432. package/lib/components/calendar/src/use-date-table.js +105 -0
  433. package/lib/components/calendar/src/use-date-table.js.map +1 -0
  434. package/lib/components/cascader/index.d.ts +62 -44
  435. package/lib/components/cascader/src/index.js +1 -1
  436. package/lib/components/cascader/src/index.js.map +1 -1
  437. package/lib/components/cascader/src/index.vue.d.ts +31 -22
  438. package/lib/components/cascader-panel/src/index.js +4 -2
  439. package/lib/components/cascader-panel/src/index.js.map +1 -1
  440. package/lib/components/color-picker/index.d.ts +21 -21
  441. package/lib/components/color-picker/index.js +2 -2
  442. package/lib/components/color-picker/src/color-picker.js +38 -315
  443. package/lib/components/color-picker/src/color-picker.js.map +1 -1
  444. package/lib/components/color-picker/src/color-picker.vue.d.ts +21 -21
  445. package/lib/components/color-picker/src/color-picker2.js +315 -38
  446. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  447. package/lib/components/color-picker/src/components/predefine.js +1 -1
  448. package/lib/components/date-picker/src/composables/use-range-picker.d.ts +1 -1
  449. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +6 -6
  450. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +45 -45
  451. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +47 -47
  452. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +3 -3
  453. package/lib/components/date-picker/src/panel-utils.d.ts +95 -95
  454. package/lib/components/dialog/index.d.ts +1 -0
  455. package/lib/components/dialog/src/dialog.vue.d.ts +1 -0
  456. package/lib/components/dialog/src/dialog2.js +4 -2
  457. package/lib/components/dialog/src/dialog2.js.map +1 -1
  458. package/lib/components/dialog/src/use-dialog.d.ts +1 -0
  459. package/lib/components/dialog/src/use-dialog.js +7 -0
  460. package/lib/components/dialog/src/use-dialog.js.map +1 -1
  461. package/lib/components/drawer/index.d.ts +1 -0
  462. package/lib/components/drawer/src/drawer.vue.d.ts +1 -0
  463. package/lib/components/index.js +1 -1
  464. package/lib/components/input/index.d.ts +18 -11
  465. package/lib/components/input/src/input.d.ts +6 -1
  466. package/lib/components/input/src/input.js +1 -2
  467. package/lib/components/input/src/input.js.map +1 -1
  468. package/lib/components/input/src/input.vue.d.ts +18 -11
  469. package/lib/components/input/src/input2.js +4 -31
  470. package/lib/components/input/src/input2.js.map +1 -1
  471. package/lib/components/input-number/index.d.ts +49 -33
  472. package/lib/components/input-number/src/input-number.vue.d.ts +49 -33
  473. package/lib/components/message-box/src/message-box.type.d.ts +2 -0
  474. package/lib/components/message-box/src/messageBox.js +18 -1
  475. package/lib/components/message-box/src/messageBox.js.map +1 -1
  476. package/lib/components/pagination/src/components/jumper.vue.d.ts +18 -11
  477. package/lib/components/popconfirm/index.d.ts +3 -10
  478. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +3 -10
  479. package/lib/components/skeleton/index.d.ts +1 -1
  480. package/lib/components/skeleton/src/skeleton.vue.d.ts +1 -1
  481. package/lib/components/slider/index.d.ts +49 -33
  482. package/lib/components/slider/src/slider.vue.d.ts +49 -33
  483. package/lib/components/switch/src/switch2.js +14 -33
  484. package/lib/components/switch/src/switch2.js.map +1 -1
  485. package/lib/components/table/src/table/style-helper.js +1 -1
  486. package/lib/components/table/src/table/style-helper.js.map +1 -1
  487. package/lib/components/table/src/table-body/render-helper.js +1 -1
  488. package/lib/components/table/src/table-body/render-helper.js.map +1 -1
  489. package/lib/components/table/src/table-body/styles-helper.d.ts +1 -1
  490. package/lib/components/table/src/table-body/styles-helper.js +2 -2
  491. package/lib/components/table/src/table-body/styles-helper.js.map +1 -1
  492. package/lib/components/table/src/util.d.ts +1 -1
  493. package/lib/components/table/src/util.js +3 -3
  494. package/lib/components/table/src/util.js.map +1 -1
  495. package/lib/components/table-v2/src/composables/use-styles.d.ts +1 -0
  496. package/lib/components/table-v2/src/composables/use-styles.js +2 -1
  497. package/lib/components/table-v2/src/composables/use-styles.js.map +1 -1
  498. package/lib/components/table-v2/src/use-table.js +3 -2
  499. package/lib/components/table-v2/src/use-table.js.map +1 -1
  500. package/lib/components/time-picker/src/common/picker.js +2 -0
  501. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  502. package/lib/components/time-picker/src/common/picker.vue.d.ts +18 -11
  503. package/lib/components/time-picker/src/composables/use-time-picker.d.ts +2 -2
  504. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +5 -5
  505. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +17 -17
  506. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +17 -17
  507. package/lib/components/transfer/index.d.ts +93 -65
  508. package/lib/components/transfer/src/transfer-panel.vue.d.ts +18 -11
  509. package/lib/components/transfer/src/transfer.vue.d.ts +93 -65
  510. package/lib/components/tree-v2/index.d.ts +868 -3
  511. package/lib/components/tree-v2/src/composables/useCheck.d.ts +2 -1
  512. package/lib/components/tree-v2/src/composables/useCheck.js.map +1 -1
  513. package/lib/components/tree-v2/src/composables/useTree.d.ts +6 -3
  514. package/lib/components/tree-v2/src/composables/useTree.js +1 -1
  515. package/lib/components/tree-v2/src/composables/useTree.js.map +1 -1
  516. package/lib/components/tree-v2/src/tree-node.js +66 -81
  517. package/lib/components/tree-v2/src/tree-node.js.map +1 -1
  518. package/lib/components/tree-v2/src/tree-node.vue.d.ts +566 -3
  519. package/lib/components/tree-v2/src/tree.js +61 -74
  520. package/lib/components/tree-v2/src/tree.js.map +1 -1
  521. package/lib/components/tree-v2/src/tree.vue.d.ts +868 -3
  522. package/lib/components/tree-v2/src/types.d.ts +1 -1
  523. package/lib/components/tree-v2/src/virtual-tree.d.ts +3 -2
  524. package/lib/components/tree-v2/src/virtual-tree.js.map +1 -1
  525. package/lib/index.js +1 -1
  526. package/lib/version.d.ts +1 -1
  527. package/lib/version.js +1 -1
  528. package/lib/version.js.map +1 -1
  529. package/package.json +2 -2
  530. package/theme-chalk/el-switch.css +1 -1
  531. package/theme-chalk/index.css +1 -1
  532. package/theme-chalk/src/switch.scss +37 -41
  533. package/web-types.json +1 -1
@@ -56,20 +56,15 @@ declare const _default: import("vue").DefineComponent<{
56
56
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
57
57
  cssVarBlockName: (name: string) => string;
58
58
  };
59
- el: import("vue").ShallowRef<HTMLElement | undefined>;
60
- container: import("vue").ShallowRef<HTMLElement | Document | undefined>;
59
+ handleClick: (event: MouseEvent) => void;
61
60
  visible: import("vue").Ref<boolean>;
62
61
  backTopStyle: import("vue").ComputedRef<{
63
62
  right: string;
64
63
  bottom: string;
65
64
  }>;
66
- scrollToTop: () => void;
67
- handleScroll: () => void;
68
- handleClick: (event: MouseEvent) => void;
69
- handleScrollThrottled: () => void;
70
- ElIcon: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
65
+ ElIcon: import("../../../utils").SFCWithInstall<import("vue").DefineComponent<{
71
66
  readonly size: {
72
- readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | number) & {}) | (() => string | number) | ((new (...args: any[]) => (string | number) & {}) | (() => string | number))[], unknown, unknown>>;
67
+ readonly type: import("vue").PropType<import("../../../utils").EpPropMergeType<(new (...args: any[]) => (string | number) & {}) | (() => string | number) | ((new (...args: any[]) => (string | number) & {}) | (() => string | number))[], unknown, unknown>>;
73
68
  readonly required: false;
74
69
  readonly validator: ((val: unknown) => boolean) | undefined;
75
70
  __epPropKey: true;
@@ -83,7 +78,7 @@ declare const _default: import("vue").DefineComponent<{
83
78
  }, {
84
79
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
85
80
  readonly size: {
86
- readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | number) & {}) | (() => string | number) | ((new (...args: any[]) => (string | number) & {}) | (() => string | number))[], unknown, unknown>>;
81
+ readonly type: import("vue").PropType<import("../../../utils").EpPropMergeType<(new (...args: any[]) => (string | number) & {}) | (() => string | number) | ((new (...args: any[]) => (string | number) & {}) | (() => string | number))[], unknown, unknown>>;
87
82
  readonly required: false;
88
83
  readonly validator: ((val: unknown) => boolean) | undefined;
89
84
  __epPropKey: true;
@@ -118,7 +113,7 @@ declare const _default: import("vue").DefineComponent<{
118
113
  style: import("vue").ComputedRef<import("vue").CSSProperties>;
119
114
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
120
115
  readonly size: {
121
- readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | number) & {}) | (() => string | number) | ((new (...args: any[]) => (string | number) & {}) | (() => string | number))[], unknown, unknown>>;
116
+ readonly type: import("vue").PropType<import("../../../utils").EpPropMergeType<(new (...args: any[]) => (string | number) & {}) | (() => string | number) | ((new (...args: any[]) => (string | number) & {}) | (() => string | number))[], unknown, unknown>>;
122
117
  readonly required: false;
123
118
  readonly validator: ((val: unknown) => boolean) | undefined;
124
119
  __epPropKey: true;
@@ -1,16 +1,12 @@
1
- import { defineComponent, shallowRef, ref, computed, onMounted, openBlock, createBlock, Transition, unref, withCtx, createElementBlock, normalizeStyle, normalizeClass, withModifiers, renderSlot, createVNode, createCommentVNode } from 'vue';
2
- import { useThrottleFn, useEventListener } from '@vueuse/core';
1
+ import { defineComponent, computed, openBlock, createBlock, Transition, unref, withCtx, createElementBlock, normalizeStyle, normalizeClass, withModifiers, renderSlot, createVNode, createCommentVNode } from 'vue';
3
2
  import { ElIcon } from '../../icon/index.mjs';
4
- import '../../../utils/index.mjs';
5
3
  import { CaretTop } from '@element-plus/icons-vue';
6
4
  import '../../../hooks/index.mjs';
7
5
  import { backtopProps, backtopEmits } from './backtop.mjs';
6
+ import { useBackTop } from './use-backtop.mjs';
8
7
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
8
  import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
10
- import { easeInOutCubic } from '../../../utils/animation.mjs';
11
- import { throwError } from '../../../utils/error.mjs';
12
9
 
13
- const _hoisted_1 = ["onClick"];
14
10
  const COMPONENT_NAME = "ElBacktop";
15
11
  const __default__ = defineComponent({
16
12
  name: COMPONENT_NAME
@@ -22,63 +18,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
22
18
  setup(__props, { emit }) {
23
19
  const props = __props;
24
20
  const ns = useNamespace("backtop");
25
- const el = shallowRef();
26
- const container = shallowRef();
27
- const visible = ref(false);
21
+ const { handleClick, visible } = useBackTop(props, emit, COMPONENT_NAME);
28
22
  const backTopStyle = computed(() => ({
29
23
  right: `${props.right}px`,
30
24
  bottom: `${props.bottom}px`
31
25
  }));
32
- const scrollToTop = () => {
33
- if (!el.value)
34
- return;
35
- const beginTime = Date.now();
36
- const beginValue = el.value.scrollTop;
37
- const frameFunc = () => {
38
- if (!el.value)
39
- return;
40
- const progress = (Date.now() - beginTime) / 500;
41
- if (progress < 1) {
42
- el.value.scrollTop = beginValue * (1 - easeInOutCubic(progress));
43
- requestAnimationFrame(frameFunc);
44
- } else {
45
- el.value.scrollTop = 0;
46
- }
47
- };
48
- requestAnimationFrame(frameFunc);
49
- };
50
- const handleScroll = () => {
51
- if (el.value)
52
- visible.value = el.value.scrollTop >= props.visibilityHeight;
53
- };
54
- const handleClick = (event) => {
55
- scrollToTop();
56
- emit("click", event);
57
- };
58
- const handleScrollThrottled = useThrottleFn(handleScroll, 300, true);
59
- useEventListener(container, "scroll", handleScrollThrottled);
60
- onMounted(() => {
61
- var _a;
62
- container.value = document;
63
- el.value = document.documentElement;
64
- if (props.target) {
65
- el.value = (_a = document.querySelector(props.target)) != null ? _a : void 0;
66
- if (!el.value) {
67
- throwError(COMPONENT_NAME, `target is not existed: ${props.target}`);
68
- }
69
- container.value = el.value;
70
- }
71
- });
72
26
  return (_ctx, _cache) => {
73
27
  return openBlock(), createBlock(Transition, {
74
28
  name: `${unref(ns).namespace.value}-fade-in`
75
29
  }, {
76
30
  default: withCtx(() => [
77
- visible.value ? (openBlock(), createElementBlock("div", {
31
+ unref(visible) ? (openBlock(), createElementBlock("div", {
78
32
  key: 0,
79
33
  style: normalizeStyle(unref(backTopStyle)),
80
34
  class: normalizeClass(unref(ns).b()),
81
- onClick: withModifiers(handleClick, ["stop"])
35
+ onClick: _cache[0] || (_cache[0] = withModifiers((...args) => unref(handleClick) && unref(handleClick)(...args), ["stop"]))
82
36
  }, [
83
37
  renderSlot(_ctx.$slots, "default", {}, () => [
84
38
  createVNode(unref(ElIcon), {
@@ -90,7 +44,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
90
44
  _: 1
91
45
  }, 8, ["class"])
92
46
  ])
93
- ], 14, _hoisted_1)) : createCommentVNode("v-if", true)
47
+ ], 6)) : createCommentVNode("v-if", true)
94
48
  ]),
95
49
  _: 3
96
50
  }, 8, ["name"]);
@@ -1 +1 @@
1
- {"version":3,"file":"backtop2.mjs","sources":["../../../../../../packages/components/backtop/src/backtop.vue"],"sourcesContent":["<template>\n <transition :name=\"`${ns.namespace.value}-fade-in`\">\n <div\n v-if=\"visible\"\n :style=\"backTopStyle\"\n :class=\"ns.b()\"\n @click.stop=\"handleClick\"\n >\n <slot>\n <el-icon :class=\"ns.e('icon')\"><caret-top /></el-icon>\n </slot>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, ref, shallowRef } from 'vue'\nimport { useEventListener, useThrottleFn } from '@vueuse/core'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { easeInOutCubic, throwError } from '@element-plus/utils'\nimport { CaretTop } from '@element-plus/icons-vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { backtopEmits, backtopProps } from './backtop'\n\nconst COMPONENT_NAME = 'ElBacktop'\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = defineProps(backtopProps)\nconst emit = defineEmits(backtopEmits)\n\nconst ns = useNamespace('backtop')\nconst el = shallowRef<HTMLElement>()\nconst container = shallowRef<Document | HTMLElement>()\nconst visible = ref(false)\n\nconst backTopStyle = computed(() => ({\n right: `${props.right}px`,\n bottom: `${props.bottom}px`,\n}))\n\nconst scrollToTop = () => {\n // TODO: use https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollTo, with behavior: 'smooth'\n\n if (!el.value) return\n const beginTime = Date.now()\n const beginValue = el.value.scrollTop\n const frameFunc = () => {\n if (!el.value) return\n const progress = (Date.now() - beginTime) / 500\n if (progress < 1) {\n el.value.scrollTop = beginValue * (1 - easeInOutCubic(progress))\n requestAnimationFrame(frameFunc)\n } else {\n el.value.scrollTop = 0\n }\n }\n requestAnimationFrame(frameFunc)\n}\nconst handleScroll = () => {\n if (el.value) visible.value = el.value.scrollTop >= props.visibilityHeight\n}\nconst handleClick = (event: MouseEvent) => {\n scrollToTop()\n emit('click', event)\n}\n\nconst handleScrollThrottled = useThrottleFn(handleScroll, 300, true)\n\nuseEventListener(container, 'scroll', handleScrollThrottled)\nonMounted(() => {\n container.value = document\n el.value = document.documentElement\n\n if (props.target) {\n el.value = document.querySelector<HTMLElement>(props.target) ?? undefined\n if (!el.value) {\n throwError(COMPONENT_NAME, `target is not existed: ${props.target}`)\n }\n container.value = el.value\n }\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;mCAyBc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;;AAKA,IAAM,MAAA,EAAA,GAAK,aAAa,SAAS,CAAA,CAAA;AACjC,IAAA,MAAM,KAAK,UAAwB,EAAA,CAAA;AACnC,IAAA,MAAM,YAAY,UAAmC,EAAA,CAAA;AACrD,IAAM,MAAA,OAAA,GAAU,IAAI,KAAK,CAAA,CAAA;AAEzB,IAAM,MAAA,YAAA,GAAe,SAAS,OAAO;AAAA,MACnC,KAAA,EAAO,GAAG,KAAM,CAAA,KAAA,CAAA,EAAA,CAAA;AAAA,MAChB,MAAA,EAAQ,GAAG,KAAM,CAAA,MAAA,CAAA,EAAA,CAAA;AAAA,KACjB,CAAA,CAAA,CAAA;AAEF,IAAA,MAAM,cAAc,MAAM;AAGxB,MAAA,IAAI,CAAC,EAAG,CAAA,KAAA;AAAO,QAAA,OAAA;AACf,MAAM,MAAA,SAAA,GAAY,KAAK,GAAI,EAAA,CAAA;AAC3B,MAAM,MAAA,UAAA,GAAa,GAAG,KAAM,CAAA,SAAA,CAAA;AAC5B,MAAA,MAAM,YAAY,MAAM;AACtB,QAAA,IAAI,CAAC,EAAG,CAAA,KAAA;AAAO,UAAA,OAAA;AACf,QAAA,MAAM,QAAY,GAAA,CAAA,IAAA,CAAK,GAAI,EAAA,GAAI,SAAa,IAAA,GAAA,CAAA;AAC5C,QAAA,IAAI,WAAW,CAAG,EAAA;AAChB,UAAA,EAAA,CAAG,KAAM,CAAA,SAAA,GAAY,UAAc,IAAA,CAAA,GAAI,eAAe,QAAQ,CAAA,CAAA,CAAA;AAC9D,UAAA,qBAAA,CAAsB,SAAS,CAAA,CAAA;AAAA,SAC1B,MAAA;AACL,UAAA,EAAA,CAAG,MAAM,SAAY,GAAA,CAAA,CAAA;AAAA,SACvB;AAAA,OACF,CAAA;AACA,MAAA,qBAAA,CAAsB,SAAS,CAAA,CAAA;AAAA,KACjC,CAAA;AACA,IAAA,MAAM,eAAe,MAAM;AACzB,MAAA,IAAI,EAAG,CAAA,KAAA;AAAO,QAAA,OAAA,CAAQ,KAAQ,GAAA,EAAA,CAAG,KAAM,CAAA,SAAA,IAAa,KAAM,CAAA,gBAAA,CAAA;AAAA,KAC5D,CAAA;AACA,IAAM,MAAA,WAAA,GAAc,CAAC,KAAsB,KAAA;AACzC,MAAY,WAAA,EAAA,CAAA;AACZ,MAAA,IAAA,CAAK,SAAS,KAAK,CAAA,CAAA;AAAA,KACrB,CAAA;AAEA,IAAA,MAAM,qBAAwB,GAAA,aAAA,CAAc,YAAc,EAAA,GAAA,EAAK,IAAI,CAAA,CAAA;AAEnE,IAAiB,gBAAA,CAAA,SAAA,EAAW,UAAU,qBAAqB,CAAA,CAAA;AAC3D,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,IAAA,EAAA,CAAA;AACA,MAAA,eAAoB,GAAA,QAAA,CAAA;AAEpB,MAAA,EAAA,CAAA,QAAkB,QAAA,CAAA,eAAA,CAAA;AAChB,MAAA,IAAA,KAAW,CAAA,MAAA,EAAA;AACX,QAAI,EAAA,CAAA,KAAI,GAAO,CAAA,EAAA,GAAA,QAAA,CAAA,aAAA,CAAA,KAAA,CAAA,MAAA,CAAA,KAAA,IAAA,GAAA,EAAA,GAAA,KAAA,CAAA,CAAA;AACb,QAAW,IAAA,CAAA,EAAA,CAAA,KAAA,EAAA;AAAwD,UACrE,UAAA,CAAA,cAAA,EAAA,CAAA,uBAAA,EAAA,KAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA;AACA,SAAA;AAAqB,QACvB,SAAA,CAAA,KAAA,GAAA,EAAA,CAAA,KAAA,CAAA;AAAA,OACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"backtop2.mjs","sources":["../../../../../../packages/components/backtop/src/backtop.vue"],"sourcesContent":["<template>\n <transition :name=\"`${ns.namespace.value}-fade-in`\">\n <div\n v-if=\"visible\"\n :style=\"backTopStyle\"\n :class=\"ns.b()\"\n @click.stop=\"handleClick\"\n >\n <slot>\n <el-icon :class=\"ns.e('icon')\"><caret-top /></el-icon>\n </slot>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CaretTop } from '@element-plus/icons-vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { backtopEmits, backtopProps } from './backtop'\nimport { useBackTop } from './use-backtop'\n\nconst COMPONENT_NAME = 'ElBacktop'\n\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = defineProps(backtopProps)\nconst emit = defineEmits(backtopEmits)\n\nconst ns = useNamespace('backtop')\n\nconst { handleClick, visible } = useBackTop(props, emit, COMPONENT_NAME)\n\nconst backTopStyle = computed(() => ({\n right: `${props.right}px`,\n bottom: `${props.bottom}px`,\n}))\n</script>\n"],"names":[],"mappings":";;;;;;;;;;mCAyBc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;;AAKA,IAAM,MAAA,EAAA,GAAK,aAAa,SAAS,CAAA,CAAA;AAEjC,IAAA,MAAM,EAAE,WAAa,EAAA,OAAA,EAAA,GAAY,UAAW,CAAA,KAAA,EAAO,MAAM,cAAc,CAAA,CAAA;AAEvE,IAAM,MAAA,YAAA,GAAe,SAAS,OAAO;AAAA,MACnC,KAAA,EAAO,GAAG,KAAM,CAAA,KAAA,CAAA,EAAA,CAAA;AAAA,MAChB,MAAA,EAAQ,GAAG,KAAM,CAAA,MAAA,CAAA,EAAA,CAAA;AAAA,KACjB,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,2 @@
1
+ import type Backtop from './backtop.vue';
2
+ export declare type BacktopInstance = InstanceType<typeof Backtop>;
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=instance.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instance.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import type { SetupContext } from 'vue';
2
+ import type { BacktopEmits, BacktopProps } from './backtop';
3
+ export declare const useBackTop: (props: BacktopProps, emit: SetupContext<BacktopEmits>['emit'], componentName: string) => {
4
+ visible: import("vue").Ref<boolean>;
5
+ handleClick: (event: MouseEvent) => void;
6
+ };
@@ -0,0 +1,58 @@
1
+ import { shallowRef, ref, onMounted } from 'vue';
2
+ import { useThrottleFn, useEventListener } from '@vueuse/core';
3
+ import '../../../utils/index.mjs';
4
+ import { easeInOutCubic } from '../../../utils/animation.mjs';
5
+ import { throwError } from '../../../utils/error.mjs';
6
+
7
+ const useBackTop = (props, emit, componentName) => {
8
+ const el = shallowRef();
9
+ const container = shallowRef();
10
+ const visible = ref(false);
11
+ const scrollToTop = () => {
12
+ if (!el.value)
13
+ return;
14
+ const beginTime = Date.now();
15
+ const beginValue = el.value.scrollTop;
16
+ const frameFunc = () => {
17
+ if (!el.value)
18
+ return;
19
+ const progress = (Date.now() - beginTime) / 500;
20
+ if (progress < 1) {
21
+ el.value.scrollTop = beginValue * (1 - easeInOutCubic(progress));
22
+ requestAnimationFrame(frameFunc);
23
+ } else {
24
+ el.value.scrollTop = 0;
25
+ }
26
+ };
27
+ requestAnimationFrame(frameFunc);
28
+ };
29
+ const handleScroll = () => {
30
+ if (el.value)
31
+ visible.value = el.value.scrollTop >= props.visibilityHeight;
32
+ };
33
+ const handleClick = (event) => {
34
+ scrollToTop();
35
+ emit("click", event);
36
+ };
37
+ const handleScrollThrottled = useThrottleFn(handleScroll, 300, true);
38
+ useEventListener(container, "scroll", handleScrollThrottled);
39
+ onMounted(() => {
40
+ var _a;
41
+ container.value = document;
42
+ el.value = document.documentElement;
43
+ if (props.target) {
44
+ el.value = (_a = document.querySelector(props.target)) != null ? _a : void 0;
45
+ if (!el.value) {
46
+ throwError(componentName, `target does not exist: ${props.target}`);
47
+ }
48
+ container.value = el.value;
49
+ }
50
+ });
51
+ return {
52
+ visible,
53
+ handleClick
54
+ };
55
+ };
56
+
57
+ export { useBackTop };
58
+ //# sourceMappingURL=use-backtop.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-backtop.mjs","sources":["../../../../../../packages/components/backtop/src/use-backtop.ts"],"sourcesContent":["import { onMounted, ref, shallowRef } from 'vue'\nimport { useEventListener, useThrottleFn } from '@vueuse/core'\nimport { easeInOutCubic, throwError } from '@element-plus/utils'\n\nimport type { SetupContext } from 'vue'\nimport type { BacktopEmits, BacktopProps } from './backtop'\n\nexport const useBackTop = (\n props: BacktopProps,\n emit: SetupContext<BacktopEmits>['emit'],\n componentName: string\n) => {\n const el = shallowRef<HTMLElement>()\n const container = shallowRef<Document | HTMLElement>()\n const visible = ref(false)\n\n const scrollToTop = () => {\n // TODO: use https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollTo, with behavior: 'smooth'\n\n if (!el.value) return\n const beginTime = Date.now()\n const beginValue = el.value.scrollTop\n const frameFunc = () => {\n if (!el.value) return\n const progress = (Date.now() - beginTime) / 500\n if (progress < 1) {\n el.value.scrollTop = beginValue * (1 - easeInOutCubic(progress))\n requestAnimationFrame(frameFunc)\n } else {\n el.value.scrollTop = 0\n }\n }\n requestAnimationFrame(frameFunc)\n }\n const handleScroll = () => {\n if (el.value) visible.value = el.value.scrollTop >= props.visibilityHeight\n }\n\n const handleClick = (event: MouseEvent) => {\n scrollToTop()\n emit('click', event)\n }\n\n const handleScrollThrottled = useThrottleFn(handleScroll, 300, true)\n\n useEventListener(container, 'scroll', handleScrollThrottled)\n onMounted(() => {\n container.value = document\n el.value = document.documentElement\n\n if (props.target) {\n el.value = document.querySelector<HTMLElement>(props.target) ?? undefined\n if (!el.value) {\n throwError(componentName, `target does not exist: ${props.target}`)\n }\n container.value = el.value\n }\n })\n\n return {\n visible,\n handleClick,\n }\n}\n"],"names":[],"mappings":";;;;;;AAGY,MAAC,UAAU,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,aAAa,KAAK;AAC1D,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;AAC1B,EAAE,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;AACjC,EAAE,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC7B,EAAE,MAAM,WAAW,GAAG,MAAM;AAC5B,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK;AACjB,MAAM,OAAO;AACb,IAAI,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AACjC,IAAI,MAAM,UAAU,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;AAC1C,IAAI,MAAM,SAAS,GAAG,MAAM;AAC5B,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK;AACnB,QAAQ,OAAO;AACf,MAAM,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,GAAG,CAAC;AACtD,MAAM,IAAI,QAAQ,GAAG,CAAC,EAAE;AACxB,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,IAAI,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;AACzE,QAAQ,qBAAqB,CAAC,SAAS,CAAC,CAAC;AACzC,OAAO,MAAM;AACb,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;AAC/B,OAAO;AACP,KAAK,CAAC;AACN,IAAI,qBAAqB,CAAC,SAAS,CAAC,CAAC;AACrC,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,MAAM;AAC7B,IAAI,IAAI,EAAE,CAAC,KAAK;AAChB,MAAM,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,gBAAgB,CAAC;AACnE,GAAG,CAAC;AACJ,EAAE,MAAM,WAAW,GAAG,CAAC,KAAK,KAAK;AACjC,IAAI,WAAW,EAAE,CAAC;AAClB,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACzB,GAAG,CAAC;AACJ,EAAE,MAAM,qBAAqB,GAAG,aAAa,CAAC,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AACvE,EAAE,gBAAgB,CAAC,SAAS,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;AAC/D,EAAE,SAAS,CAAC,MAAM;AAClB,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,SAAS,CAAC,KAAK,GAAG,QAAQ,CAAC;AAC/B,IAAI,EAAE,CAAC,KAAK,GAAG,QAAQ,CAAC,eAAe,CAAC;AACxC,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE;AACtB,MAAM,EAAE,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;AACnF,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;AACrB,QAAQ,UAAU,CAAC,aAAa,EAAE,CAAC,uBAAuB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC5E,OAAO;AACP,MAAM,SAAS,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;AACjC,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,OAAO;AACX,IAAI,WAAW;AACf,GAAG,CAAC;AACJ;;;;"}
@@ -59,11 +59,7 @@ export declare const ElButton: import("element-plus/es/utils").SFCWithInstall<im
59
59
  onClick?: ((evt: MouseEvent) => any) | undefined;
60
60
  }>>;
61
61
  emit: (event: "click", evt: MouseEvent) => void;
62
- slots: Readonly<{
63
- [name: string]: import("vue").Slot | undefined;
64
- }>;
65
- buttonGroupContext: import("../..").ButtonGroupContext | undefined;
66
- globalConfig: import("vue").Ref<import("./src/button").ButtonConfigContext | undefined>;
62
+ buttonStyle: import("vue").ComputedRef<Record<string, string>>;
67
63
  ns: {
68
64
  namespace: import("vue").Ref<string>;
69
65
  b: (blockSuffix?: string) => string;
@@ -82,14 +78,11 @@ export declare const ElButton: import("element-plus/es/utils").SFCWithInstall<im
82
78
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
83
79
  cssVarBlockName: (name: string) => string;
84
80
  };
85
- form: import("../..").FormContext | undefined;
86
- _size: import("vue").ComputedRef<"" | "default" | "small" | "large">;
87
- _disabled: import("vue").ComputedRef<boolean>;
88
81
  _ref: import("vue").Ref<HTMLButtonElement | undefined>;
82
+ _size: import("vue").ComputedRef<"" | "default" | "small" | "large">;
89
83
  _type: import("vue").ComputedRef<"" | "default" | "primary" | "success" | "warning" | "info" | "danger" | "text">;
90
- autoInsertSpace: import("vue").ComputedRef<import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>>;
84
+ _disabled: import("vue").ComputedRef<boolean>;
91
85
  shouldAddSpace: import("vue").ComputedRef<boolean>;
92
- buttonStyle: import("vue").ComputedRef<Record<string, string>>;
93
86
  handleClick: (evt: MouseEvent) => void;
94
87
  ElIcon: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
95
88
  readonly size: {
@@ -303,3 +296,4 @@ export declare const ElButtonGroup: import("element-plus/es/utils").SFCWithInsta
303
296
  }>>;
304
297
  export default ElButton;
305
298
  export * from './src/button';
299
+ export type { ButtonInstance, ButtonGroupInstance } from './src/instance';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/button/index.ts"],"sourcesContent":["import { withInstall, withNoopInstall } from '@element-plus/utils'\nimport Button from './src/button.vue'\nimport ButtonGroup from './src/button-group.vue'\n\nexport const ElButton = withInstall(Button, {\n ButtonGroup,\n})\nexport const ElButtonGroup = withNoopInstall(ButtonGroup)\nexport default ElButton\n\nexport * from './src/button'\n"],"names":[],"mappings":";;;;;;AAGY,MAAC,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE;AAC5C,EAAE,WAAW;AACb,CAAC,EAAE;AACS,MAAC,aAAa,GAAG,eAAe,CAAC,WAAW;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/button/index.ts"],"sourcesContent":["import { withInstall, withNoopInstall } from '@element-plus/utils'\nimport Button from './src/button.vue'\nimport ButtonGroup from './src/button-group.vue'\n\nexport const ElButton = withInstall(Button, {\n ButtonGroup,\n})\nexport const ElButtonGroup = withNoopInstall(ButtonGroup)\nexport default ElButton\n\nexport * from './src/button'\nexport type { ButtonInstance, ButtonGroupInstance } from './src/instance'\n"],"names":[],"mappings":";;;;;;AAGY,MAAC,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE;AAC5C,EAAE,WAAW;AACb,CAAC,EAAE;AACS,MAAC,aAAa,GAAG,eAAe,CAAC,WAAW;;;;"}
@@ -1,5 +1,4 @@
1
1
  import type { ExtractPropTypes } from 'vue';
2
- import type buttonGroup from './button-group.vue';
3
2
  export declare const buttonGroupProps: {
4
3
  readonly size: {
5
4
  readonly type: import("vue").PropType<import("../../../utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
@@ -10,4 +9,3 @@ export declare const buttonGroupProps: {
10
9
  readonly type: import("../../../utils").EpPropFinalized<StringConstructor, "" | "default" | "primary" | "success" | "warning" | "info" | "danger" | "text", unknown, "", boolean>;
11
10
  };
12
11
  export declare type ButtonGroupProps = ExtractPropTypes<typeof buttonGroupProps>;
13
- export declare type ButtonGroupInstance = InstanceType<typeof buttonGroup>;
@@ -1 +1 @@
1
- {"version":3,"file":"button-group.mjs","sources":["../../../../../../packages/components/button/src/button-group.ts"],"sourcesContent":["import { buttonProps } from './button'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type buttonGroup from './button-group.vue'\n\nexport const buttonGroupProps = {\n size: buttonProps.size,\n type: buttonProps.type,\n} as const\nexport type ButtonGroupProps = ExtractPropTypes<typeof buttonGroupProps>\n\nexport type ButtonGroupInstance = InstanceType<typeof buttonGroup>\n"],"names":[],"mappings":";;AACY,MAAC,gBAAgB,GAAG;AAChC,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI;AACxB,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI;AACxB;;;;"}
1
+ {"version":3,"file":"button-group.mjs","sources":["../../../../../../packages/components/button/src/button-group.ts"],"sourcesContent":["import { buttonProps } from './button'\n\nimport type { ExtractPropTypes } from 'vue'\n\nexport const buttonGroupProps = {\n size: buttonProps.size,\n type: buttonProps.type,\n} as const\nexport type ButtonGroupProps = ExtractPropTypes<typeof buttonGroupProps>\n"],"names":[],"mappings":";;AACY,MAAC,gBAAgB,GAAG;AAChC,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI;AACxB,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI;AACxB;;;;"}
@@ -1,5 +1,4 @@
1
1
  import type { ExtractPropTypes } from 'vue';
2
- import type button from './button.vue';
3
2
  export declare const buttonTypes: readonly ["default", "primary", "success", "warning", "info", "danger", "text", ""];
4
3
  export declare const buttonNativeTypes: readonly ["button", "submit", "reset"];
5
4
  export declare const buttonProps: {
@@ -38,7 +37,6 @@ export declare type ButtonProps = ExtractPropTypes<typeof buttonProps>;
38
37
  export declare type ButtonEmits = typeof buttonEmits;
39
38
  export declare type ButtonType = ButtonProps['type'];
40
39
  export declare type ButtonNativeType = ButtonProps['nativeType'];
41
- export declare type ButtonInstance = InstanceType<typeof button>;
42
40
  export interface ButtonConfigContext {
43
41
  autoInsertSpace?: boolean;
44
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"button.mjs","sources":["../../../../../../packages/components/button/src/button.ts"],"sourcesContent":["import { useSizeProp } from '@element-plus/hooks'\nimport { buildProps, iconPropType } from '@element-plus/utils'\nimport { Loading } from '@element-plus/icons-vue'\nimport type { ExtractPropTypes } from 'vue'\nimport type button from './button.vue'\n\nexport const buttonTypes = [\n 'default',\n 'primary',\n 'success',\n 'warning',\n 'info',\n 'danger',\n /**\n * @deprecated\n * Text type will be deprecated in the next major version (3.0.0)\n */\n 'text',\n '',\n] as const\nexport const buttonNativeTypes = ['button', 'submit', 'reset'] as const\n\nexport const buttonProps = buildProps({\n size: useSizeProp,\n disabled: Boolean,\n type: {\n type: String,\n values: buttonTypes,\n default: '',\n },\n icon: {\n type: iconPropType,\n },\n nativeType: {\n type: String,\n values: buttonNativeTypes,\n default: 'button',\n },\n loading: Boolean,\n loadingIcon: {\n type: iconPropType,\n default: () => Loading,\n },\n plain: Boolean,\n text: Boolean,\n link: Boolean,\n bg: Boolean,\n autofocus: Boolean,\n round: Boolean,\n circle: Boolean,\n color: String,\n dark: Boolean,\n autoInsertSpace: {\n type: Boolean,\n default: undefined,\n },\n} as const)\nexport const buttonEmits = {\n click: (evt: MouseEvent) => evt instanceof MouseEvent,\n}\n\nexport type ButtonProps = ExtractPropTypes<typeof buttonProps>\nexport type ButtonEmits = typeof buttonEmits\n\nexport type ButtonType = ButtonProps['type']\nexport type ButtonNativeType = ButtonProps['nativeType']\n\nexport type ButtonInstance = InstanceType<typeof button>\n\nexport interface ButtonConfigContext {\n autoInsertSpace?: boolean\n}\n"],"names":[],"mappings":";;;;;;;AAGY,MAAC,WAAW,GAAG;AAC3B,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,QAAQ;AACV,EAAE,MAAM;AACR,EAAE,EAAE;AACJ,EAAE;AACU,MAAC,iBAAiB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnD,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,WAAW;AACvB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,iBAAiB;AAC7B,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,YAAY;AACtB,IAAI,OAAO,EAAE,MAAM,OAAO;AAC1B,GAAG;AACH,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,EAAE,EAAE,OAAO;AACb,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAG;AAC3B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C;;;;"}
1
+ {"version":3,"file":"button.mjs","sources":["../../../../../../packages/components/button/src/button.ts"],"sourcesContent":["import { useSizeProp } from '@element-plus/hooks'\nimport { buildProps, iconPropType } from '@element-plus/utils'\nimport { Loading } from '@element-plus/icons-vue'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const buttonTypes = [\n 'default',\n 'primary',\n 'success',\n 'warning',\n 'info',\n 'danger',\n /**\n * @deprecated\n * Text type will be deprecated in the next major version (3.0.0)\n */\n 'text',\n '',\n] as const\nexport const buttonNativeTypes = ['button', 'submit', 'reset'] as const\n\nexport const buttonProps = buildProps({\n size: useSizeProp,\n disabled: Boolean,\n type: {\n type: String,\n values: buttonTypes,\n default: '',\n },\n icon: {\n type: iconPropType,\n },\n nativeType: {\n type: String,\n values: buttonNativeTypes,\n default: 'button',\n },\n loading: Boolean,\n loadingIcon: {\n type: iconPropType,\n default: () => Loading,\n },\n plain: Boolean,\n text: Boolean,\n link: Boolean,\n bg: Boolean,\n autofocus: Boolean,\n round: Boolean,\n circle: Boolean,\n color: String,\n dark: Boolean,\n autoInsertSpace: {\n type: Boolean,\n default: undefined,\n },\n} as const)\nexport const buttonEmits = {\n click: (evt: MouseEvent) => evt instanceof MouseEvent,\n}\n\nexport type ButtonProps = ExtractPropTypes<typeof buttonProps>\nexport type ButtonEmits = typeof buttonEmits\n\nexport type ButtonType = ButtonProps['type']\nexport type ButtonNativeType = ButtonProps['nativeType']\n\nexport interface ButtonConfigContext {\n autoInsertSpace?: boolean\n}\n"],"names":[],"mappings":";;;;;;;AAGY,MAAC,WAAW,GAAG;AAC3B,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,QAAQ;AACV,EAAE,MAAM;AACR,EAAE,EAAE;AACJ,EAAE;AACU,MAAC,iBAAiB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnD,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,WAAW;AACvB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,iBAAiB;AAC7B,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,YAAY;AACtB,IAAI,OAAO,EAAE,MAAM,OAAO;AAC1B,GAAG;AACH,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,EAAE,EAAE,OAAO;AACb,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAG;AAC3B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C;;;;"}
@@ -59,11 +59,7 @@ declare const _default: import("vue").DefineComponent<{
59
59
  onClick?: ((evt: MouseEvent) => any) | undefined;
60
60
  }>>;
61
61
  emit: (event: "click", evt: MouseEvent) => void;
62
- slots: Readonly<{
63
- [name: string]: import("vue").Slot | undefined;
64
- }>;
65
- buttonGroupContext: import("element-plus/es/tokens").ButtonGroupContext | undefined;
66
- globalConfig: import("vue").Ref<import("./button").ButtonConfigContext | undefined>;
62
+ buttonStyle: import("vue").ComputedRef<Record<string, string>>;
67
63
  ns: {
68
64
  namespace: import("vue").Ref<string>;
69
65
  b: (blockSuffix?: string) => string;
@@ -82,14 +78,11 @@ declare const _default: import("vue").DefineComponent<{
82
78
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
83
79
  cssVarBlockName: (name: string) => string;
84
80
  };
85
- form: import("element-plus/es/tokens").FormContext | undefined;
86
- _size: import("vue").ComputedRef<"" | "default" | "small" | "large">;
87
- _disabled: import("vue").ComputedRef<boolean>;
88
81
  _ref: import("vue").Ref<HTMLButtonElement | undefined>;
82
+ _size: import("vue").ComputedRef<"" | "default" | "small" | "large">;
89
83
  _type: import("vue").ComputedRef<"" | "default" | "primary" | "success" | "warning" | "info" | "danger" | "text">;
90
- autoInsertSpace: import("vue").ComputedRef<import("../../../utils").EpPropMergeType<BooleanConstructor, unknown, unknown>>;
84
+ _disabled: import("vue").ComputedRef<boolean>;
91
85
  shouldAddSpace: import("vue").ComputedRef<boolean>;
92
- buttonStyle: import("vue").ComputedRef<Record<string, string>>;
93
86
  handleClick: (evt: MouseEvent) => void;
94
87
  ElIcon: import("../../../utils").SFCWithInstall<import("vue").DefineComponent<{
95
88
  readonly size: {
@@ -1,16 +1,11 @@
1
- import { defineComponent, useSlots, computed, inject, ref, Text, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, Fragment, renderSlot, createBlock, withCtx, resolveDynamicComponent, createCommentVNode } from 'vue';
1
+ import { defineComponent, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, Fragment, renderSlot, createBlock, withCtx, resolveDynamicComponent, createCommentVNode } from 'vue';
2
2
  import { ElIcon } from '../../icon/index.mjs';
3
3
  import '../../../hooks/index.mjs';
4
- import '../../../tokens/index.mjs';
4
+ import { useButton } from './use-button.mjs';
5
5
  import { buttonProps, buttonEmits } from './button.mjs';
6
6
  import { useButtonCustomStyle } from './button-custom.mjs';
7
7
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
8
- import { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';
9
- import { buttonGroupContextKey } from '../../../tokens/button.mjs';
10
- import { useGlobalConfig } from '../../../hooks/use-global-config/index.mjs';
11
8
  import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
12
- import { useFormItem } from '../../../hooks/use-form-item/index.mjs';
13
- import { useSize, useDisabled } from '../../../hooks/use-common-props/index.mjs';
14
9
 
15
10
  const _hoisted_1 = ["aria-disabled", "disabled", "autofocus", "type"];
16
11
  const __default__ = defineComponent({
@@ -22,45 +17,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
22
17
  emits: buttonEmits,
23
18
  setup(__props, { expose, emit }) {
24
19
  const props = __props;
25
- const slots = useSlots();
26
- useDeprecated({
27
- from: "type.text",
28
- replacement: "link",
29
- version: "3.0.0",
30
- scope: "props",
31
- ref: "https://element-plus.org/en-US/component/button.html#button-attributes"
32
- }, computed(() => props.type === "text"));
33
- const buttonGroupContext = inject(buttonGroupContextKey, void 0);
34
- const globalConfig = useGlobalConfig("button");
35
- const ns = useNamespace("button");
36
- const { form } = useFormItem();
37
- const _size = useSize(computed(() => buttonGroupContext == null ? void 0 : buttonGroupContext.size));
38
- const _disabled = useDisabled();
39
- const _ref = ref();
40
- const _type = computed(() => props.type || (buttonGroupContext == null ? void 0 : buttonGroupContext.type) || "");
41
- const autoInsertSpace = computed(() => {
42
- var _a, _b, _c;
43
- return (_c = (_b = props.autoInsertSpace) != null ? _b : (_a = globalConfig.value) == null ? void 0 : _a.autoInsertSpace) != null ? _c : false;
44
- });
45
- const shouldAddSpace = computed(() => {
46
- var _a;
47
- const defaultSlot = (_a = slots.default) == null ? void 0 : _a.call(slots);
48
- if (autoInsertSpace.value && (defaultSlot == null ? void 0 : defaultSlot.length) === 1) {
49
- const slot = defaultSlot[0];
50
- if ((slot == null ? void 0 : slot.type) === Text) {
51
- const text = slot.children;
52
- return /^\p{Unified_Ideograph}{2}$/u.test(text.trim());
53
- }
54
- }
55
- return false;
56
- });
57
20
  const buttonStyle = useButtonCustomStyle(props);
58
- const handleClick = (evt) => {
59
- if (props.nativeType === "reset") {
60
- form == null ? void 0 : form.resetFields();
61
- }
62
- emit("click", evt);
63
- };
21
+ const ns = useNamespace("button");
22
+ const { _ref, _size, _type, _disabled, shouldAddSpace, handleClick } = useButton(props, emit);
64
23
  expose({
65
24
  ref: _ref,
66
25
  size: _size,
@@ -90,7 +49,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
90
49
  autofocus: _ctx.autofocus,
91
50
  type: _ctx.nativeType,
92
51
  style: normalizeStyle(unref(buttonStyle)),
93
- onClick: handleClick
52
+ onClick: _cache[0] || (_cache[0] = (...args) => unref(handleClick) && unref(handleClick)(...args))
94
53
  }, [
95
54
  _ctx.loading ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
96
55
  _ctx.$slots.loading ? renderSlot(_ctx.$slots, "loading", { key: 0 }) : (openBlock(), createBlock(unref(ElIcon), {
@@ -1 +1 @@
1
- {"version":3,"file":"button2.mjs","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <button\n ref=\"_ref\"\n :class=\"[\n ns.b(),\n ns.m(_type),\n ns.m(_size),\n ns.is('disabled', _disabled),\n ns.is('loading', loading),\n ns.is('plain', plain),\n ns.is('round', round),\n ns.is('circle', circle),\n ns.is('text', text),\n ns.is('link', link),\n ns.is('has-bg', bg),\n ]\"\n :aria-disabled=\"_disabled || loading\"\n :disabled=\"_disabled || loading\"\n :autofocus=\"autofocus\"\n :type=\"nativeType\"\n :style=\"buttonStyle\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\" />\n <el-icon v-else :class=\"ns.is('loading')\">\n <component :is=\"loadingIcon\" />\n </el-icon>\n </template>\n <el-icon v-else-if=\"icon || $slots.icon\">\n <component :is=\"icon\" v-if=\"icon\" />\n <slot v-else name=\"icon\" />\n </el-icon>\n <span\n v-if=\"$slots.default\"\n :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n >\n <slot />\n </span>\n </button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { Text, computed, inject, ref, useSlots } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n useDeprecated,\n useDisabled,\n useFormItem,\n useGlobalConfig,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport { buttonGroupContextKey } from '@element-plus/tokens'\nimport { buttonEmits, buttonProps } from './button'\nimport { useButtonCustomStyle } from './button-custom'\n\ndefineOptions({\n name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\nconst slots = useSlots()\n\nuseDeprecated(\n {\n from: 'type.text',\n replacement: 'link',\n version: '3.0.0',\n scope: 'props',\n ref: 'https://element-plus.org/en-US/component/button.html#button-attributes',\n },\n computed(() => props.type === 'text')\n)\n\nconst buttonGroupContext = inject(buttonGroupContextKey, undefined)\nconst globalConfig = useGlobalConfig('button')\nconst ns = useNamespace('button')\nconst { form } = useFormItem()\nconst _size = useSize(computed(() => buttonGroupContext?.size))\nconst _disabled = useDisabled()\nconst _ref = ref<HTMLButtonElement>()\n\nconst _type = computed(() => props.type || buttonGroupContext?.type || '')\nconst autoInsertSpace = computed(\n () => props.autoInsertSpace ?? globalConfig.value?.autoInsertSpace ?? false\n)\n\n// add space between two characters in Chinese\nconst shouldAddSpace = computed(() => {\n const defaultSlot = slots.default?.()\n if (autoInsertSpace.value && defaultSlot?.length === 1) {\n const slot = defaultSlot[0]\n if (slot?.type === Text) {\n const text = slot.children as string\n return /^\\p{Unified_Ideograph}{2}$/u.test(text.trim())\n }\n }\n return false\n})\n\nconst buttonStyle = useButtonCustomStyle(props)\n\nconst handleClick = (evt: MouseEvent) => {\n if (props.nativeType === 'reset') {\n form?.resetFields()\n }\n emit('click', evt)\n}\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: _size,\n /** @description button type */\n type: _type,\n /** @description button disabled */\n disabled: _disabled,\n /** @description whether adding space */\n shouldAddSpace,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;mCAyDc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAIA,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AAEvB,IACE,aAAA,CAAA;AAAA,MACE,IAAM,EAAA,WAAA;AAAA,MACN,WAAa,EAAA,MAAA;AAAA,MACb,OAAS,EAAA,OAAA;AAAA,MACT,KAAO,EAAA,OAAA;AAAA,MACP,GAAK,EAAA,wEAAA;AAAA,OAEP,QAAS,CAAA,MAAM,KAAM,CAAA,IAAA,KAAS,MAAM,CACtC,CAAA,CAAA;AAEA,IAAM,MAAA,kBAAA,GAAqB,MAAO,CAAA,qBAAA,EAAuB,KAAS,CAAA,CAAA,CAAA;AAClE,IAAM,MAAA,YAAA,GAAe,gBAAgB,QAAQ,CAAA,CAAA;AAC7C,IAAM,MAAA,EAAA,GAAK,aAAa,QAAQ,CAAA,CAAA;AAChC,IAAM,MAAA,EAAE,SAAS,WAAY,EAAA,CAAA;AAC7B,IAAA,MAAM,QAAQ,OAAQ,CAAA,QAAA,CAAS,MAAM,kBAAA,QAAyB,GAAA,KAAA,CAAA,GAAA,kBAAA,CAAA,IAAA,CAAA,CAAA,CAAA;AAC9D,IAAA,MAAM,YAAY,WAAY,EAAA,CAAA;AAC9B,IAAA,MAAM,OAAO,GAAuB,EAAA,CAAA;AAEpC,IAAA,MAAM,QAAQ,QAAS,CAAA,MAAM,MAAM,IAAQ,KAAA,kBAAA,WAA8B,KAAA,CAAA,GAAA,kBAAA,CAAA,IAAA,CAAA,IAAA,EAAA,CAAA,CAAA;AACzE,IAAM,MAAA,eAAA,GAAkB,SACtB,MAAM;AAIR,MAAM,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AACJ,MAAM,OAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,qBAA8B,KAAA,IAAA,GAAA,EAAA,GAAA,CAAA,EAAA,GAAA,YAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,eAAA,KAAA,IAAA,GAAA,EAAA,GAAA,KAAA,CAAA;AACpC,KAAA,CAAA,CAAA;AACE,IAAA,MAAA,cAAyB,GAAA,QAAA,CAAA,MAAA;AACzB,MAAI,IAAA,EAAA,CAAA;AACF,MAAA,MAAA,WAAa,GAAK,CAAA,EAAA,GAAA,KAAA,CAAA,OAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA;AAClB,MAAA,IAAA,eAAqC,CAAA,KAAA,IAAA,CAAA,WAAA,IAAA,IAAU,GAAA,KAAM,CAAA,GAAA,WAAA,CAAA,MAAA,MAAA,CAAA,EAAA;AAAA,QACvD,MAAA,IAAA,GAAA,WAAA,CAAA,CAAA,CAAA,CAAA;AAAA,QACF,IAAA,CAAA,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAA,IAAA,MAAA,IAAA,EAAA;AACA,UAAO,MAAA,IAAA,GAAA,IAAA,CAAA,QAAA,CAAA;AAAA,UACR,OAAA,6BAAA,CAAA,IAAA,CAAA,IAAA,CAAA,IAAA,EAAA,CAAA,CAAA;AAED,SAAM;AAEN,OAAM;AACJ,MAAI,OAAA;AACF,KAAA,CAAA,CAAA;AAAkB,IACpB,MAAA,WAAA,GAAA,oBAAA,CAAA,KAAA,CAAA,CAAA;AACA,IAAA,MAAA,WAAiB,GAAA,CAAA,GAAA,KAAA;AAAA,MACnB,IAAA,KAAA,CAAA,UAAA,KAAA,OAAA,EAAA;AAEA,QAAa,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAA,WAAA,EAAA,CAAA;AAAA,OAEN;AAAA,MAEL,IAAM,CAAA,OAAA,EAAA,GAAA,CAAA,CAAA;AAAA,KAAA,CAEN;AAAM,IAAA,MAEI,CAAA;AAAA,MAEV,GAAA,EAAA,IAAA;AAAA,MACD,IAAA,EAAA,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"button2.mjs","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <button\n ref=\"_ref\"\n :class=\"[\n ns.b(),\n ns.m(_type),\n ns.m(_size),\n ns.is('disabled', _disabled),\n ns.is('loading', loading),\n ns.is('plain', plain),\n ns.is('round', round),\n ns.is('circle', circle),\n ns.is('text', text),\n ns.is('link', link),\n ns.is('has-bg', bg),\n ]\"\n :aria-disabled=\"_disabled || loading\"\n :disabled=\"_disabled || loading\"\n :autofocus=\"autofocus\"\n :type=\"nativeType\"\n :style=\"buttonStyle\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\" />\n <el-icon v-else :class=\"ns.is('loading')\">\n <component :is=\"loadingIcon\" />\n </el-icon>\n </template>\n <el-icon v-else-if=\"icon || $slots.icon\">\n <component :is=\"icon\" v-if=\"icon\" />\n <slot v-else name=\"icon\" />\n </el-icon>\n <span\n v-if=\"$slots.default\"\n :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n >\n <slot />\n </span>\n </button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useButton } from './use-button'\nimport { buttonEmits, buttonProps } from './button'\nimport { useButtonCustomStyle } from './button-custom'\n\ndefineOptions({\n name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\n\nconst buttonStyle = useButtonCustomStyle(props)\nconst ns = useNamespace('button')\nconst { _ref, _size, _type, _disabled, shouldAddSpace, handleClick } =\n useButton(props, emit)\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: _size,\n /** @description button type */\n type: _type,\n /** @description button disabled */\n disabled: _disabled,\n /** @description whether adding space */\n shouldAddSpace,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;mCAiDc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,WAAA,GAAc,qBAAqB,KAAK,CAAA,CAAA;AAC9C,IAAM,MAAA,EAAA,GAAK,aAAa,QAAQ,CAAA,CAAA;AAChC,IAAM,MAAA,EAAE,MAAM,KAAO,EAAA,KAAA,EAAO,WAAW,cAAgB,EAAA,WAAA,EAAA,GACrD,SAAU,CAAA,KAAA,EAAO,IAAI,CAAA,CAAA;AAEvB,IAAa,MAAA,CAAA;AAAA,MAEX,GAAK,EAAA,IAAA;AAAA,MAEL,IAAM,EAAA,KAAA;AAAA,MAEN,IAAM,EAAA,KAAA;AAAA,MAEN,QAAU,EAAA,SAAA;AAAA,MAEV,cAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,4 @@
1
+ import type Button from './button.vue';
2
+ import type ButtonGroup from './button-group.vue';
3
+ export declare type ButtonInstance = InstanceType<typeof Button>;
4
+ export declare type ButtonGroupInstance = InstanceType<typeof ButtonGroup>;
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=instance.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instance.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ import type { SetupContext } from 'vue';
2
+ import type { ButtonEmits, ButtonProps } from './button';
3
+ export declare const useButton: (props: ButtonProps, emit: SetupContext<ButtonEmits>['emit']) => {
4
+ _disabled: import("vue").ComputedRef<boolean>;
5
+ _size: import("vue").ComputedRef<"" | "default" | "small" | "large">;
6
+ _type: import("vue").ComputedRef<"" | "default" | "primary" | "success" | "warning" | "info" | "danger" | "text">;
7
+ _ref: import("vue").Ref<HTMLButtonElement | undefined>;
8
+ shouldAddSpace: import("vue").ComputedRef<boolean>;
9
+ handleClick: (evt: MouseEvent) => void;
10
+ };
@@ -0,0 +1,59 @@
1
+ import { computed, inject, ref, useSlots, Text } from 'vue';
2
+ import '../../../hooks/index.mjs';
3
+ import '../../../tokens/index.mjs';
4
+ import { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';
5
+ import { buttonGroupContextKey } from '../../../tokens/button.mjs';
6
+ import { useGlobalConfig } from '../../../hooks/use-global-config/index.mjs';
7
+ import { useFormItem } from '../../../hooks/use-form-item/index.mjs';
8
+ import { useSize, useDisabled } from '../../../hooks/use-common-props/index.mjs';
9
+
10
+ const useButton = (props, emit) => {
11
+ useDeprecated({
12
+ from: "type.text",
13
+ replacement: "link",
14
+ version: "3.0.0",
15
+ scope: "props",
16
+ ref: "https://element-plus.org/en-US/component/button.html#button-attributes"
17
+ }, computed(() => props.type === "text"));
18
+ const buttonGroupContext = inject(buttonGroupContextKey, void 0);
19
+ const globalConfig = useGlobalConfig("button");
20
+ const { form } = useFormItem();
21
+ const _size = useSize(computed(() => buttonGroupContext == null ? void 0 : buttonGroupContext.size));
22
+ const _disabled = useDisabled();
23
+ const _ref = ref();
24
+ const slots = useSlots();
25
+ const _type = computed(() => props.type || (buttonGroupContext == null ? void 0 : buttonGroupContext.type) || "");
26
+ const autoInsertSpace = computed(() => {
27
+ var _a, _b, _c;
28
+ return (_c = (_b = props.autoInsertSpace) != null ? _b : (_a = globalConfig.value) == null ? void 0 : _a.autoInsertSpace) != null ? _c : false;
29
+ });
30
+ const shouldAddSpace = computed(() => {
31
+ var _a;
32
+ const defaultSlot = (_a = slots.default) == null ? void 0 : _a.call(slots);
33
+ if (autoInsertSpace.value && (defaultSlot == null ? void 0 : defaultSlot.length) === 1) {
34
+ const slot = defaultSlot[0];
35
+ if ((slot == null ? void 0 : slot.type) === Text) {
36
+ const text = slot.children;
37
+ return /^\p{Unified_Ideograph}{2}$/u.test(text.trim());
38
+ }
39
+ }
40
+ return false;
41
+ });
42
+ const handleClick = (evt) => {
43
+ if (props.nativeType === "reset") {
44
+ form == null ? void 0 : form.resetFields();
45
+ }
46
+ emit("click", evt);
47
+ };
48
+ return {
49
+ _disabled,
50
+ _size,
51
+ _type,
52
+ _ref,
53
+ shouldAddSpace,
54
+ handleClick
55
+ };
56
+ };
57
+
58
+ export { useButton };
59
+ //# sourceMappingURL=use-button.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-button.mjs","sources":["../../../../../../packages/components/button/src/use-button.ts"],"sourcesContent":["import { Text, computed, inject, ref, useSlots } from 'vue'\nimport {\n useDeprecated,\n useDisabled,\n useFormItem,\n useGlobalConfig,\n useSize,\n} from '@element-plus/hooks'\nimport { buttonGroupContextKey } from '@element-plus/tokens'\n\nimport type { SetupContext } from 'vue'\nimport type { ButtonEmits, ButtonProps } from './button'\n\nexport const useButton = (\n props: ButtonProps,\n emit: SetupContext<ButtonEmits>['emit']\n) => {\n useDeprecated(\n {\n from: 'type.text',\n replacement: 'link',\n version: '3.0.0',\n scope: 'props',\n ref: 'https://element-plus.org/en-US/component/button.html#button-attributes',\n },\n computed(() => props.type === 'text')\n )\n\n const buttonGroupContext = inject(buttonGroupContextKey, undefined)\n const globalConfig = useGlobalConfig('button')\n const { form } = useFormItem()\n const _size = useSize(computed(() => buttonGroupContext?.size))\n const _disabled = useDisabled()\n const _ref = ref<HTMLButtonElement>()\n const slots = useSlots()\n\n const _type = computed(() => props.type || buttonGroupContext?.type || '')\n const autoInsertSpace = computed(\n () => props.autoInsertSpace ?? globalConfig.value?.autoInsertSpace ?? false\n )\n\n // add space between two characters in Chinese\n const shouldAddSpace = computed(() => {\n const defaultSlot = slots.default?.()\n if (autoInsertSpace.value && defaultSlot?.length === 1) {\n const slot = defaultSlot[0]\n if (slot?.type === Text) {\n const text = slot.children as string\n return /^\\p{Unified_Ideograph}{2}$/u.test(text.trim())\n }\n }\n return false\n })\n\n const handleClick = (evt: MouseEvent) => {\n if (props.nativeType === 'reset') {\n form?.resetFields()\n }\n emit('click', evt)\n }\n\n return {\n _disabled,\n _size,\n _type,\n _ref,\n shouldAddSpace,\n handleClick,\n }\n}\n"],"names":[],"mappings":"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"}