element-plus 1.2.0-beta.5 → 1.2.0-beta.6

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 (984) hide show
  1. package/README.md +5 -174
  2. package/attributes.json +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.full.js +1568 -1607
  5. package/dist/index.full.min.js +8 -8
  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 +1563 -1612
  10. package/es/component.d.ts +3 -0
  11. package/es/component.mjs.map +1 -1
  12. package/es/components/affix/index.d.ts +48 -0
  13. package/es/components/affix/src/affix.vue.d.ts +48 -0
  14. package/es/components/alert/index.d.ts +5 -5
  15. package/es/components/alert/src/alert.d.ts +1 -1
  16. package/es/components/alert/src/alert.vue.d.ts +5 -5
  17. package/es/components/autocomplete/index.d.ts +4 -4
  18. package/es/components/autocomplete/src/index.vue.d.ts +2 -2
  19. package/es/components/autocomplete/src/index.vue_vue_type_script_lang.mjs +1 -1
  20. package/es/components/autocomplete/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  21. package/es/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.mjs.map +1 -1
  22. package/es/components/avatar/index.d.ts +1 -1
  23. package/es/components/avatar/src/avatar.vue.d.ts +1 -1
  24. package/es/components/backtop/src/backtop.vue_vue_type_script_lang.mjs +1 -1
  25. package/es/components/backtop/src/backtop.vue_vue_type_script_lang.mjs.map +1 -1
  26. package/es/components/backtop/src/backtop.vue_vue_type_template_id_63a7fea6_lang.mjs.map +1 -1
  27. package/es/components/button/index.d.ts +18 -18
  28. package/es/components/button/src/button-group.d.ts +1 -1
  29. package/es/components/button/src/button-group.vue.d.ts +3 -3
  30. package/es/components/button/src/button.d.ts +3 -3
  31. package/es/components/button/src/button.mjs +5 -3
  32. package/es/components/button/src/button.mjs.map +1 -1
  33. package/es/components/button/src/button.vue.d.ts +12 -12
  34. package/es/components/button/src/button.vue_vue_type_script_lang.mjs +9 -12
  35. package/es/components/button/src/button.vue_vue_type_script_lang.mjs.map +1 -1
  36. package/es/components/button/src/button.vue_vue_type_template_id_802c5c76_lang.mjs.map +1 -1
  37. package/es/components/calendar/index.d.ts +20 -47
  38. package/es/components/calendar/index.mjs +6 -8
  39. package/es/components/calendar/index.mjs.map +1 -1
  40. package/es/components/calendar/src/calendar.d.ts +11 -0
  41. package/es/components/calendar/src/calendar.mjs +19 -0
  42. package/es/components/calendar/src/calendar.mjs.map +1 -0
  43. package/es/components/calendar/src/calendar.vue.d.ts +34 -0
  44. package/es/components/calendar/src/{index.vue_vue_type_script_lang.mjs → calendar.vue_vue_type_script_lang.mjs} +12 -23
  45. package/es/components/calendar/src/calendar.vue_vue_type_script_lang.mjs.map +1 -0
  46. package/es/components/calendar/src/{index.vue_vue_type_template_id_819aa44a_lang.mjs → calendar.vue_vue_type_template_id_76705c76_lang.mjs} +1 -1
  47. package/es/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.mjs.map +1 -0
  48. package/es/components/calendar/src/calendar2.mjs +7 -0
  49. package/es/components/calendar/src/calendar2.mjs.map +1 -0
  50. package/es/components/calendar/src/date-table.d.ts +13 -0
  51. package/es/components/calendar/src/date-table.mjs +23 -5
  52. package/es/components/calendar/src/date-table.mjs.map +1 -1
  53. package/es/components/calendar/src/date-table.vue.d.ts +29 -38
  54. package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs +54 -71
  55. package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs.map +1 -1
  56. package/es/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.mjs +1 -1
  57. package/es/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.mjs.map +1 -1
  58. package/es/components/calendar/src/date-table2.mjs +7 -0
  59. package/es/components/calendar/src/date-table2.mjs.map +1 -0
  60. package/es/components/carousel/src/main.vue_vue_type_script_lang.mjs +1 -1
  61. package/es/components/carousel/src/main.vue_vue_type_script_lang.mjs.map +1 -1
  62. package/es/components/carousel/src/main.vue_vue_type_template_id_1303d144_lang.mjs.map +1 -1
  63. package/es/components/cascader/index.d.ts +8756 -0
  64. package/es/components/cascader/src/index.vue.d.ts +4384 -0
  65. package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs +3 -4
  66. package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  67. package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs.map +1 -1
  68. package/es/components/cascader-panel/src/node.vue_vue_type_script_lang.mjs +1 -1
  69. package/es/components/cascader-panel/src/node.vue_vue_type_script_lang.mjs.map +1 -1
  70. package/es/components/cascader-panel/src/node.vue_vue_type_template_id_18b09cb2_lang.mjs.map +1 -1
  71. package/es/components/checkbox/index.d.ts +10 -10
  72. package/es/components/checkbox/src/checkbox-button.vue.d.ts +3 -3
  73. package/es/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.mjs +5 -3
  74. package/es/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.mjs.map +1 -1
  75. package/es/components/checkbox/src/checkbox-group.vue_vue_type_template_id_9944d4d2_lang.mjs.map +1 -1
  76. package/es/components/checkbox/src/checkbox.type.d.ts +2 -2
  77. package/es/components/checkbox/src/checkbox.vue.d.ts +4 -4
  78. package/es/components/checkbox/src/useCheckbox.d.ts +2 -3
  79. package/es/components/checkbox/src/useCheckbox.mjs +9 -18
  80. package/es/components/checkbox/src/useCheckbox.mjs.map +1 -1
  81. package/es/components/collapse/index.d.ts +4 -4
  82. package/es/components/collapse/src/collapse-item.vue.d.ts +2 -2
  83. package/es/components/collapse/src/collapse-item.vue_vue_type_script_lang.mjs +1 -1
  84. package/es/components/collapse/src/collapse-item.vue_vue_type_script_lang.mjs.map +1 -1
  85. package/es/components/collapse/src/collapse-item.vue_vue_type_template_id_80da782a_lang.mjs.map +1 -1
  86. package/es/components/color-picker/index.d.ts +2 -2
  87. package/es/components/color-picker/src/components/alpha-slider.vue.d.ts +30 -0
  88. package/es/components/color-picker/src/index.vue.d.ts +1 -1
  89. package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs +3 -6
  90. package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  91. package/es/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.mjs.map +1 -1
  92. package/es/components/config-provider/index.d.ts +10 -9
  93. package/es/components/config-provider/src/config-provider.d.ts +3 -4
  94. package/es/components/config-provider/src/config-provider.mjs +10 -11
  95. package/es/components/config-provider/src/config-provider.mjs.map +1 -1
  96. package/es/components/config-provider/src/index.d.ts +10 -9
  97. package/es/components/date-picker/index.d.ts +10 -10
  98. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +3 -3
  99. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +2 -2
  100. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs +1 -1
  101. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs.map +1 -1
  102. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.mjs.map +1 -1
  103. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +3 -3
  104. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.mjs +1 -1
  105. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.mjs.map +1 -1
  106. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.mjs.map +1 -1
  107. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +2 -2
  108. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs +1 -1
  109. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs.map +1 -1
  110. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.mjs.map +1 -1
  111. package/es/components/date-picker/src/date-picker.d.ts +5 -5
  112. package/es/components/descriptions/index.d.ts +1 -1
  113. package/es/components/descriptions/src/index.vue.d.ts +1 -1
  114. package/es/components/descriptions/src/index.vue_vue_type_script_lang.mjs +4 -6
  115. package/es/components/descriptions/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  116. package/es/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.mjs.map +1 -1
  117. package/es/components/dialog/index.d.ts +8 -2
  118. package/es/components/dialog/src/dialog.d.ts +2 -1
  119. package/es/components/dialog/src/dialog.mjs +4 -0
  120. package/es/components/dialog/src/dialog.mjs.map +1 -1
  121. package/es/components/dialog/src/dialog.vue.d.ts +8 -2
  122. package/es/components/dialog/src/dialog.vue_vue_type_script_lang.mjs.map +1 -1
  123. package/es/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.mjs +2 -3
  124. package/es/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.mjs.map +1 -1
  125. package/es/components/dialog/src/use-dialog.d.ts +2 -0
  126. package/es/components/dialog/src/use-dialog.mjs +2 -0
  127. package/es/components/dialog/src/use-dialog.mjs.map +1 -1
  128. package/es/components/divider/index.d.ts +4 -0
  129. package/es/components/divider/src/divider.d.ts +2 -0
  130. package/es/components/divider/src/divider.mjs +5 -1
  131. package/es/components/divider/src/divider.mjs.map +1 -1
  132. package/es/components/divider/src/divider.vue.d.ts +4 -0
  133. package/es/components/divider/src/divider.vue_vue_type_script_lang.mjs.map +1 -1
  134. package/es/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.mjs +4 -3
  135. package/es/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.mjs.map +1 -1
  136. package/es/components/drawer/index.d.ts +66 -208
  137. package/es/components/drawer/index.mjs +6 -8
  138. package/es/components/drawer/index.mjs.map +1 -1
  139. package/es/components/drawer/src/drawer.d.ts +35 -0
  140. package/es/components/drawer/src/drawer.mjs +28 -0
  141. package/es/components/drawer/src/drawer.mjs.map +1 -0
  142. package/es/components/drawer/src/drawer.vue.d.ts +129 -0
  143. package/es/components/drawer/src/drawer.vue_vue_type_script_lang.mjs +37 -0
  144. package/es/components/drawer/src/drawer.vue_vue_type_script_lang.mjs.map +1 -0
  145. package/es/components/drawer/src/{index.vue_vue_type_template_id_052d0d8e_lang.mjs → drawer.vue_vue_type_template_id_e0557736_lang.mjs} +1 -1
  146. package/es/components/drawer/src/drawer.vue_vue_type_template_id_e0557736_lang.mjs.map +1 -0
  147. package/es/components/drawer/src/drawer2.mjs +7 -0
  148. package/es/components/drawer/src/drawer2.mjs.map +1 -0
  149. package/es/components/dropdown/index.d.ts +3 -3
  150. package/es/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
  151. package/es/components/dropdown/src/dropdown.vue.d.ts +1 -1
  152. package/es/components/dropdown/src/dropdown.vue_vue_type_script_lang.mjs +4 -4
  153. package/es/components/dropdown/src/dropdown.vue_vue_type_script_lang.mjs.map +1 -1
  154. package/es/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.mjs.map +1 -1
  155. package/es/components/dropdown/src/useDropdown.d.ts +0 -1
  156. package/es/components/dropdown/src/useDropdown.mjs +1 -3
  157. package/es/components/dropdown/src/useDropdown.mjs.map +1 -1
  158. package/es/components/form/index.d.ts +4 -4
  159. package/es/components/form/src/form-item.vue.d.ts +2 -2
  160. package/es/components/form/src/form-item.vue_vue_type_script_lang.mjs +4 -6
  161. package/es/components/form/src/form-item.vue_vue_type_script_lang.mjs.map +1 -1
  162. package/es/components/form/src/form-item.vue_vue_type_template_id_24eda48b_lang.mjs.map +1 -1
  163. package/es/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.mjs +1 -1
  164. package/es/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.mjs.map +1 -1
  165. package/es/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.mjs.map +1 -1
  166. package/es/components/index.mjs +5 -1
  167. package/es/components/index.mjs.map +1 -1
  168. package/es/components/input/index.d.ts +10 -10
  169. package/es/components/input/src/input.d.ts +2 -2
  170. package/es/components/input/src/input.mjs +4 -3
  171. package/es/components/input/src/input.mjs.map +1 -1
  172. package/es/components/input/src/input.vue.d.ts +10 -10
  173. package/es/components/input/src/input.vue_vue_type_script_lang.mjs +10 -11
  174. package/es/components/input/src/input.vue_vue_type_script_lang.mjs.map +1 -1
  175. package/es/components/input/src/input.vue_vue_type_template_id_3290dcb6_lang.mjs.map +1 -1
  176. package/es/components/input-number/index.d.ts +23 -23
  177. package/es/components/input-number/src/input-number.vue.d.ts +23 -23
  178. package/es/components/input-number/src/input-number.vue_vue_type_script_lang.mjs +6 -5
  179. package/es/components/input-number/src/input-number.vue_vue_type_script_lang.mjs.map +1 -1
  180. package/es/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.mjs +2 -1
  181. package/es/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.mjs.map +1 -1
  182. package/es/components/link/index.d.ts +2 -2
  183. package/es/components/link/src/link.vue.d.ts +2 -2
  184. package/es/components/loading/index.d.ts +52 -13
  185. package/es/components/loading/index.mjs +3 -3
  186. package/es/components/loading/index.mjs.map +1 -1
  187. package/es/components/loading/src/directive.d.ts +11 -10
  188. package/es/components/loading/src/directive.mjs +45 -26
  189. package/es/components/loading/src/directive.mjs.map +1 -1
  190. package/es/components/loading/src/loading.d.ts +24 -0
  191. package/es/components/loading/src/loading.mjs +112 -0
  192. package/es/components/loading/src/loading.mjs.map +1 -0
  193. package/es/components/loading/src/service.d.ts +3 -0
  194. package/es/components/loading/src/service.mjs +101 -0
  195. package/es/components/loading/src/service.mjs.map +1 -0
  196. package/es/components/loading/src/types.d.ts +23 -0
  197. package/es/components/loading/src/types.mjs +2 -0
  198. package/es/components/loading/src/types.mjs.map +1 -0
  199. package/es/components/menu/src/menu.mjs +1 -1
  200. package/es/components/menu/src/menu.mjs.map +1 -1
  201. package/es/components/menu/src/sub-menu.mjs +1 -1
  202. package/es/components/menu/src/sub-menu.mjs.map +1 -1
  203. package/es/components/message/src/message.d.ts +1 -1
  204. package/es/components/message/src/message.vue.d.ts +4 -3
  205. package/es/components/message/src/message.vue_vue_type_script_lang.mjs +2 -0
  206. package/es/components/message/src/message.vue_vue_type_script_lang.mjs.map +1 -1
  207. package/es/components/message/src/message.vue_vue_type_template_id_031967c2_lang.mjs +51 -54
  208. package/es/components/message/src/message.vue_vue_type_template_id_031967c2_lang.mjs.map +1 -1
  209. package/es/components/message-box/src/index.vue.d.ts +1840 -0
  210. package/es/components/notification/src/notification.d.ts +1 -1
  211. package/es/components/notification/src/notification.vue.d.ts +5 -5
  212. package/es/components/page-header/src/page-header.mjs +1 -1
  213. package/es/components/page-header/src/page-header.mjs.map +1 -1
  214. package/es/components/pagination/src/components/next.vue_vue_type_script_lang.mjs +1 -1
  215. package/es/components/pagination/src/components/next.vue_vue_type_script_lang.mjs.map +1 -1
  216. package/es/components/pagination/src/components/next.vue_vue_type_template_id_93fbb39e_lang.mjs.map +1 -1
  217. package/es/components/pagination/src/components/pager.vue_vue_type_script_lang.mjs +1 -1
  218. package/es/components/pagination/src/components/pager.vue_vue_type_script_lang.mjs.map +1 -1
  219. package/es/components/pagination/src/components/pager.vue_vue_type_template_id_0bfc9916_lang.mjs.map +1 -1
  220. package/es/components/pagination/src/components/prev.vue_vue_type_script_lang.mjs +1 -1
  221. package/es/components/pagination/src/components/prev.vue_vue_type_script_lang.mjs.map +1 -1
  222. package/es/components/pagination/src/components/prev.vue_vue_type_template_id_15259d71_lang.mjs.map +1 -1
  223. package/es/components/popconfirm/index.d.ts +2 -2
  224. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  225. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  226. package/es/components/popconfirm/src/popconfirm.vue.d.ts +2 -2
  227. package/es/components/popover/index.d.ts +2 -2
  228. package/es/components/popover/src/index.vue.d.ts +1 -1
  229. package/es/components/popper/index.d.ts +3480 -0
  230. package/es/components/popper/src/index.vue.d.ts +1737 -0
  231. package/es/components/popper/src/use-popper/index.d.ts +1540 -1
  232. package/es/components/progress/index.d.ts +81 -4
  233. package/es/components/progress/index.mjs +6 -8
  234. package/es/components/progress/index.mjs.map +1 -1
  235. package/es/components/progress/src/progress.d.ts +22 -0
  236. package/es/components/progress/src/progress.mjs +62 -0
  237. package/es/components/progress/src/progress.mjs.map +1 -0
  238. package/es/components/progress/src/progress.vue.d.ts +81 -0
  239. package/es/components/progress/src/{index.vue_vue_type_script_lang.mjs → progress.vue_vue_type_script_lang.mjs} +27 -94
  240. package/es/components/progress/src/progress.vue_vue_type_script_lang.mjs.map +1 -0
  241. package/es/components/progress/src/{index.vue_vue_type_template_id_556e268a_lang.mjs → progress.vue_vue_type_template_id_9158c3b6_lang.mjs} +1 -1
  242. package/es/components/progress/src/progress.vue_vue_type_template_id_9158c3b6_lang.mjs.map +1 -0
  243. package/es/components/progress/src/progress2.mjs +7 -0
  244. package/es/components/progress/src/progress2.mjs.map +1 -0
  245. package/es/components/radio/index.d.ts +36 -40
  246. package/es/components/radio/src/radio-button.d.ts +2 -2
  247. package/es/components/radio/src/radio-button.vue.d.ts +8 -8
  248. package/es/components/radio/src/radio-group.d.ts +2 -2
  249. package/es/components/radio/src/radio-group.mjs +3 -2
  250. package/es/components/radio/src/radio-group.mjs.map +1 -1
  251. package/es/components/radio/src/radio-group.vue.d.ts +6 -8
  252. package/es/components/radio/src/radio-group.vue_vue_type_script_lang.mjs +1 -3
  253. package/es/components/radio/src/radio-group.vue_vue_type_script_lang.mjs.map +1 -1
  254. package/es/components/radio/src/radio-group.vue_vue_type_template_id_53ef81f9_lang.mjs.map +1 -1
  255. package/es/components/radio/src/radio.d.ts +5 -5
  256. package/es/components/radio/src/radio.mjs +5 -6
  257. package/es/components/radio/src/radio.mjs.map +1 -1
  258. package/es/components/radio/src/radio.vue.d.ts +8 -8
  259. package/es/components/rate/src/rate.mjs +1 -1
  260. package/es/components/rate/src/rate.mjs.map +1 -1
  261. package/es/components/rate/src/rate.vue_vue_type_script_lang.mjs +1 -1
  262. package/es/components/rate/src/rate.vue_vue_type_script_lang.mjs.map +1 -1
  263. package/es/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.mjs.map +1 -1
  264. package/es/components/result/index.d.ts +3 -3
  265. package/es/components/result/src/result.d.ts +1 -1
  266. package/es/components/result/src/result.mjs +1 -1
  267. package/es/components/result/src/result.mjs.map +1 -1
  268. package/es/components/result/src/result.vue.d.ts +3 -3
  269. package/es/components/select/index.d.ts +14 -7
  270. package/es/components/select/src/select.vue.d.ts +14 -7
  271. package/es/components/select/src/select.vue_vue_type_script_lang.mjs +5 -1
  272. package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  273. package/es/components/select/src/select.vue_vue_type_template_id_33774f85_lang.mjs +6 -6
  274. package/es/components/select/src/select.vue_vue_type_template_id_33774f85_lang.mjs.map +1 -1
  275. package/es/components/select/src/useSelect.d.ts +76 -0
  276. package/es/components/select/src/useSelect.mjs +3 -3
  277. package/es/components/select/src/useSelect.mjs.map +1 -1
  278. package/es/components/select-v2/index.d.ts +14 -14
  279. package/es/components/select-v2/src/defaults.mjs +1 -1
  280. package/es/components/select-v2/src/defaults.mjs.map +1 -1
  281. package/es/components/select-v2/src/select.vue.d.ts +7 -7
  282. package/es/components/select-v2/src/useSelect.d.ts +1 -1
  283. package/es/components/select-v2/src/useSelect.mjs +5 -6
  284. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  285. package/es/components/skeleton/index.d.ts +6 -6
  286. package/es/components/skeleton/src/skeleton-item.d.ts +1 -1
  287. package/es/components/skeleton/src/skeleton-item.vue.d.ts +3 -3
  288. package/es/components/slider/index.d.ts +307 -0
  289. package/es/components/slider/src/index.vue.d.ts +155 -0
  290. package/es/components/slider/src/useSlide.d.ts +21 -0
  291. package/es/components/steps/index.d.ts +4 -4
  292. package/es/components/steps/src/item.vue.d.ts +2 -2
  293. package/es/components/steps/src/item.vue_vue_type_script_lang.mjs +1 -1
  294. package/es/components/steps/src/item.vue_vue_type_script_lang.mjs.map +1 -1
  295. package/es/components/steps/src/item.vue_vue_type_template_id_6ec47f4b_lang.mjs.map +1 -1
  296. package/es/components/switch/index.d.ts +99 -4
  297. package/es/components/switch/index.mjs +6 -8
  298. package/es/components/switch/index.mjs.map +1 -1
  299. package/es/components/switch/src/switch.d.ts +31 -0
  300. package/es/components/switch/src/switch.mjs +87 -0
  301. package/es/components/switch/src/switch.mjs.map +1 -0
  302. package/es/components/switch/src/switch.vue.d.ts +98 -0
  303. package/es/components/switch/src/switch.vue_vue_type_script_lang.mjs +117 -0
  304. package/es/components/switch/src/switch.vue_vue_type_script_lang.mjs.map +1 -0
  305. package/es/components/switch/src/{index.vue_vue_type_template_id_ee4fcade_lang.mjs → switch.vue_vue_type_template_id_538fbc85_lang.mjs} +1 -1
  306. package/es/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.mjs.map +1 -0
  307. package/es/components/switch/src/switch2.mjs +7 -0
  308. package/es/components/switch/src/switch2.mjs.map +1 -0
  309. package/es/components/table/index.d.ts +9 -9
  310. package/es/components/table/src/config.mjs +1 -1
  311. package/es/components/table/src/config.mjs.map +1 -1
  312. package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs +1 -1
  313. package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs.map +1 -1
  314. package/es/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.mjs.map +1 -1
  315. package/es/components/table/src/table/style-helper.d.ts +1 -1
  316. package/es/components/table/src/table/style-helper.mjs +3 -5
  317. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  318. package/es/components/table/src/table-column/defaults.d.ts +2 -2
  319. package/es/components/table/src/table-column/defaults.mjs.map +1 -1
  320. package/es/components/table/src/table-column/index.d.ts +3 -3
  321. package/es/components/table/src/table.vue.d.ts +3 -3
  322. package/es/components/table/src/util.mjs +0 -1
  323. package/es/components/table/src/util.mjs.map +1 -1
  324. package/es/components/tabs/index.d.ts +4 -4
  325. package/es/components/tabs/src/tab-nav.mjs +1 -1
  326. package/es/components/tabs/src/tab-nav.mjs.map +1 -1
  327. package/es/components/tabs/src/tab-pane.vue.d.ts +2 -2
  328. package/es/components/tabs/src/tabs.mjs +1 -1
  329. package/es/components/tabs/src/tabs.mjs.map +1 -1
  330. package/es/components/tag/src/tag.vue_vue_type_script_lang.mjs +4 -4
  331. package/es/components/tag/src/tag.vue_vue_type_script_lang.mjs.map +1 -1
  332. package/es/components/tag/src/tag.vue_vue_type_template_id_525996c5_lang.mjs.map +1 -1
  333. package/es/components/time-picker/index.d.ts +10 -10
  334. package/es/components/time-picker/src/common/date-utils.d.ts +1 -1
  335. package/es/components/time-picker/src/common/date-utils.mjs +1 -3
  336. package/es/components/time-picker/src/common/date-utils.mjs.map +1 -1
  337. package/es/components/time-picker/src/common/picker.vue.d.ts +6 -6
  338. package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs +6 -8
  339. package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs.map +1 -1
  340. package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs.map +1 -1
  341. package/es/components/time-picker/src/common/props.d.ts +1 -1
  342. package/es/components/time-picker/src/common/props.mjs +1 -1
  343. package/es/components/time-picker/src/common/props.mjs.map +1 -1
  344. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.mjs +1 -1
  345. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.mjs.map +1 -1
  346. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_template_id_4fb3c576_lang.mjs.map +1 -1
  347. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -1
  348. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -1
  349. package/es/components/time-picker/src/time-picker-com/useTimePicker.d.ts +2 -2
  350. package/es/components/time-picker/src/time-picker.d.ts +5 -5
  351. package/es/components/time-select/index.d.ts +4 -4
  352. package/es/components/time-select/src/time-select.vue.d.ts +2 -2
  353. package/es/components/time-select/src/time-select.vue_vue_type_script_lang.mjs +1 -1
  354. package/es/components/time-select/src/time-select.vue_vue_type_script_lang.mjs.map +1 -1
  355. package/es/components/time-select/src/time-select.vue_vue_type_template_id_5beb6389_lang.mjs.map +1 -1
  356. package/es/components/timeline/index.d.ts +4 -4
  357. package/es/components/timeline/src/item.vue.d.ts +2 -2
  358. package/es/components/tooltip/src/index.mjs +4 -2
  359. package/es/components/tooltip/src/index.mjs.map +1 -1
  360. package/es/components/transfer/index.d.ts +8 -8
  361. package/es/components/transfer/src/index.vue.d.ts +4 -4
  362. package/es/components/transfer/src/index.vue_vue_type_script_lang.mjs +1 -1
  363. package/es/components/transfer/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  364. package/es/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.mjs.map +1 -1
  365. package/es/components/transfer/src/transfer-panel.vue.d.ts +2 -2
  366. package/es/components/transfer/src/transfer-panel.vue_vue_type_script_lang.mjs +1 -1
  367. package/es/components/transfer/src/transfer-panel.vue_vue_type_script_lang.mjs.map +1 -1
  368. package/es/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.mjs.map +1 -1
  369. package/es/components/tree/index.d.ts +2 -2
  370. package/es/components/tree/src/tree-node.vue_vue_type_script_lang.mjs +1 -1
  371. package/es/components/tree/src/tree-node.vue_vue_type_script_lang.mjs.map +1 -1
  372. package/es/components/tree/src/tree-node.vue_vue_type_template_id_62959aba_lang.mjs.map +1 -1
  373. package/es/components/tree/src/tree.vue.d.ts +1 -1
  374. package/es/components/tree-v2/index.d.ts +2 -2
  375. package/es/components/tree-v2/src/composables/useTree.d.ts +29 -0
  376. package/es/components/tree-v2/src/tree-node.vue.d.ts +2 -2
  377. package/es/components/tree-v2/src/tree-node.vue_vue_type_script_lang.mjs +1 -1
  378. package/es/components/tree-v2/src/tree-node.vue_vue_type_script_lang.mjs.map +1 -1
  379. package/es/components/tree-v2/src/tree-node.vue_vue_type_template_id_71d8f826_lang.mjs.map +1 -1
  380. package/es/components/tree-v2/src/tree.vue.d.ts +2 -2
  381. package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs +3 -3
  382. package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs.map +1 -1
  383. package/es/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.mjs.map +1 -1
  384. package/es/components/virtual-list/src/builders/build-list.d.ts +1 -1
  385. package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +1 -1
  386. package/es/components/virtual-list/src/components/fixed-size-list.d.ts +1 -1
  387. package/es/components/virtual-list/src/components/scrollbar.d.ts +1 -1
  388. package/es/defaults.mjs +1 -1
  389. package/es/defaults.mjs.map +1 -1
  390. package/es/hooks/index.d.ts +2 -0
  391. package/es/hooks/index.mjs +3 -1
  392. package/es/hooks/index.mjs.map +1 -1
  393. package/es/hooks/use-common-props/index.d.ts +5 -0
  394. package/es/hooks/use-common-props/index.mjs +31 -0
  395. package/es/hooks/use-common-props/index.mjs.map +1 -0
  396. package/es/hooks/use-form-item/index.d.ts +1 -14
  397. package/es/hooks/use-form-item/index.mjs +3 -24
  398. package/es/hooks/use-form-item/index.mjs.map +1 -1
  399. package/es/hooks/use-global-config/index.d.ts +4 -1
  400. package/es/hooks/use-global-config/index.mjs +8 -6
  401. package/es/hooks/use-global-config/index.mjs.map +1 -1
  402. package/es/hooks/use-locale/index.d.ts +6 -5
  403. package/es/hooks/use-locale/index.mjs +11 -8
  404. package/es/hooks/use-locale/index.mjs.map +1 -1
  405. package/es/hooks/use-lockscreen/index.mjs +5 -1
  406. package/es/hooks/use-lockscreen/index.mjs.map +1 -1
  407. package/es/hooks/use-prop/index.d.ts +2 -0
  408. package/es/hooks/use-prop/index.mjs +12 -0
  409. package/es/hooks/use-prop/index.mjs.map +1 -0
  410. package/es/index.d.ts +1 -1
  411. package/es/index.mjs +9 -3
  412. package/es/index.mjs.map +1 -1
  413. package/es/locale/index.d.ts +0 -5
  414. package/es/locale/index.mjs +0 -52
  415. package/es/locale/index.mjs.map +1 -1
  416. package/es/locale/lang/ca.mjs +2 -2
  417. package/es/locale/lang/ca.mjs.map +1 -1
  418. package/es/locale/lang/en.mjs +2 -2
  419. package/es/locale/lang/en.mjs.map +1 -1
  420. package/es/make-installer.d.ts +1 -2
  421. package/es/make-installer.mjs +2 -4
  422. package/es/make-installer.mjs.map +1 -1
  423. package/es/plugin.d.ts +2 -47
  424. package/es/plugin.mjs +1 -1
  425. package/es/plugin.mjs.map +1 -1
  426. package/es/tokens/form.d.ts +1 -1
  427. package/es/tokens/form.mjs.map +1 -1
  428. package/es/utils/aria.d.ts +1 -0
  429. package/es/utils/aria.mjs +2 -1
  430. package/es/utils/aria.mjs.map +1 -1
  431. package/es/utils/config.d.ts +1 -1
  432. package/es/utils/config.mjs.map +1 -1
  433. package/es/utils/icon.mjs +1 -1
  434. package/es/utils/icon.mjs.map +1 -1
  435. package/es/utils/util.d.ts +8 -2
  436. package/es/utils/util.mjs.map +1 -1
  437. package/es/version.d.ts +1 -1
  438. package/es/version.mjs +1 -1
  439. package/es/version.mjs.map +1 -1
  440. package/lib/component.d.ts +3 -0
  441. package/lib/component.js.map +1 -1
  442. package/lib/components/affix/index.d.ts +48 -0
  443. package/lib/components/affix/src/affix.vue.d.ts +48 -0
  444. package/lib/components/alert/index.d.ts +5 -5
  445. package/lib/components/alert/src/alert.d.ts +1 -1
  446. package/lib/components/alert/src/alert.vue.d.ts +5 -5
  447. package/lib/components/autocomplete/index.d.ts +4 -4
  448. package/lib/components/autocomplete/src/index.vue.d.ts +2 -2
  449. package/lib/components/autocomplete/src/index.vue_vue_type_script_lang.js +2 -2
  450. package/lib/components/autocomplete/src/index.vue_vue_type_script_lang.js.map +1 -1
  451. package/lib/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.js.map +1 -1
  452. package/lib/components/avatar/index.d.ts +1 -1
  453. package/lib/components/avatar/src/avatar.vue.d.ts +1 -1
  454. package/lib/components/backtop/src/backtop.vue_vue_type_script_lang.js +2 -2
  455. package/lib/components/backtop/src/backtop.vue_vue_type_script_lang.js.map +1 -1
  456. package/lib/components/backtop/src/backtop.vue_vue_type_template_id_63a7fea6_lang.js.map +1 -1
  457. package/lib/components/button/index.d.ts +18 -18
  458. package/lib/components/button/src/button-group.d.ts +1 -1
  459. package/lib/components/button/src/button-group.vue.d.ts +3 -3
  460. package/lib/components/button/src/button.d.ts +3 -3
  461. package/lib/components/button/src/button.js +5 -3
  462. package/lib/components/button/src/button.js.map +1 -1
  463. package/lib/components/button/src/button.vue.d.ts +12 -12
  464. package/lib/components/button/src/button.vue_vue_type_script_lang.js +10 -13
  465. package/lib/components/button/src/button.vue_vue_type_script_lang.js.map +1 -1
  466. package/lib/components/button/src/button.vue_vue_type_template_id_802c5c76_lang.js.map +1 -1
  467. package/lib/components/calendar/index.d.ts +20 -47
  468. package/lib/components/calendar/index.js +8 -8
  469. package/lib/components/calendar/index.js.map +1 -1
  470. package/lib/components/calendar/src/calendar.d.ts +11 -0
  471. package/lib/components/calendar/src/calendar.js +24 -0
  472. package/lib/components/calendar/src/calendar.js.map +1 -0
  473. package/lib/components/calendar/src/calendar.vue.d.ts +34 -0
  474. package/lib/components/calendar/src/{index.vue_vue_type_script_lang.js → calendar.vue_vue_type_script_lang.js} +12 -23
  475. package/lib/components/calendar/src/calendar.vue_vue_type_script_lang.js.map +1 -0
  476. package/lib/components/calendar/src/{index.vue_vue_type_template_id_819aa44a_lang.js → calendar.vue_vue_type_template_id_76705c76_lang.js} +1 -1
  477. package/lib/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.js.map +1 -0
  478. package/lib/components/calendar/src/calendar2.js +12 -0
  479. package/lib/components/calendar/src/calendar2.js.map +1 -0
  480. package/lib/components/calendar/src/date-table.d.ts +13 -0
  481. package/lib/components/calendar/src/date-table.js +23 -7
  482. package/lib/components/calendar/src/date-table.js.map +1 -1
  483. package/lib/components/calendar/src/date-table.vue.d.ts +29 -38
  484. package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js +53 -70
  485. package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js.map +1 -1
  486. package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js +1 -1
  487. package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js.map +1 -1
  488. package/lib/components/calendar/src/date-table2.js +14 -0
  489. package/lib/components/calendar/src/date-table2.js.map +1 -0
  490. package/lib/components/carousel/src/main.vue_vue_type_script_lang.js +3 -3
  491. package/lib/components/carousel/src/main.vue_vue_type_script_lang.js.map +1 -1
  492. package/lib/components/carousel/src/main.vue_vue_type_template_id_1303d144_lang.js.map +1 -1
  493. package/lib/components/cascader/index.d.ts +8756 -0
  494. package/lib/components/cascader/src/index.vue.d.ts +4384 -0
  495. package/lib/components/cascader/src/index.vue_vue_type_script_lang.js +6 -7
  496. package/lib/components/cascader/src/index.vue_vue_type_script_lang.js.map +1 -1
  497. package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js.map +1 -1
  498. package/lib/components/cascader-panel/src/node.vue_vue_type_script_lang.js +4 -4
  499. package/lib/components/cascader-panel/src/node.vue_vue_type_script_lang.js.map +1 -1
  500. package/lib/components/cascader-panel/src/node.vue_vue_type_template_id_18b09cb2_lang.js.map +1 -1
  501. package/lib/components/checkbox/index.d.ts +10 -10
  502. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +3 -3
  503. package/lib/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.js +4 -2
  504. package/lib/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.js.map +1 -1
  505. package/lib/components/checkbox/src/checkbox-group.vue_vue_type_template_id_9944d4d2_lang.js.map +1 -1
  506. package/lib/components/checkbox/src/checkbox.type.d.ts +2 -2
  507. package/lib/components/checkbox/src/checkbox.vue.d.ts +4 -4
  508. package/lib/components/checkbox/src/useCheckbox.d.ts +2 -3
  509. package/lib/components/checkbox/src/useCheckbox.js +9 -18
  510. package/lib/components/checkbox/src/useCheckbox.js.map +1 -1
  511. package/lib/components/collapse/index.d.ts +4 -4
  512. package/lib/components/collapse/src/collapse-item.vue.d.ts +2 -2
  513. package/lib/components/collapse/src/collapse-item.vue_vue_type_script_lang.js +2 -2
  514. package/lib/components/collapse/src/collapse-item.vue_vue_type_script_lang.js.map +1 -1
  515. package/lib/components/collapse/src/collapse-item.vue_vue_type_template_id_80da782a_lang.js.map +1 -1
  516. package/lib/components/color-picker/index.d.ts +2 -2
  517. package/lib/components/color-picker/src/components/alpha-slider.vue.d.ts +30 -0
  518. package/lib/components/color-picker/src/index.vue.d.ts +1 -1
  519. package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js +5 -8
  520. package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js.map +1 -1
  521. package/lib/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.js.map +1 -1
  522. package/lib/components/config-provider/index.d.ts +10 -9
  523. package/lib/components/config-provider/src/config-provider.d.ts +3 -4
  524. package/lib/components/config-provider/src/config-provider.js +9 -10
  525. package/lib/components/config-provider/src/config-provider.js.map +1 -1
  526. package/lib/components/config-provider/src/index.d.ts +10 -9
  527. package/lib/components/date-picker/index.d.ts +10 -10
  528. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +3 -3
  529. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +2 -2
  530. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js +5 -5
  531. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js.map +1 -1
  532. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.js.map +1 -1
  533. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +3 -3
  534. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.js +5 -5
  535. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.js.map +1 -1
  536. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.js.map +1 -1
  537. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +2 -2
  538. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js +2 -2
  539. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js.map +1 -1
  540. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.js.map +1 -1
  541. package/lib/components/date-picker/src/date-picker.d.ts +5 -5
  542. package/lib/components/descriptions/index.d.ts +1 -1
  543. package/lib/components/descriptions/src/index.vue.d.ts +1 -1
  544. package/lib/components/descriptions/src/index.vue_vue_type_script_lang.js +3 -5
  545. package/lib/components/descriptions/src/index.vue_vue_type_script_lang.js.map +1 -1
  546. package/lib/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.js.map +1 -1
  547. package/lib/components/dialog/index.d.ts +8 -2
  548. package/lib/components/dialog/src/dialog.d.ts +2 -1
  549. package/lib/components/dialog/src/dialog.js +4 -0
  550. package/lib/components/dialog/src/dialog.js.map +1 -1
  551. package/lib/components/dialog/src/dialog.vue.d.ts +8 -2
  552. package/lib/components/dialog/src/dialog.vue_vue_type_script_lang.js.map +1 -1
  553. package/lib/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.js +1 -2
  554. package/lib/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.js.map +1 -1
  555. package/lib/components/dialog/src/use-dialog.d.ts +2 -0
  556. package/lib/components/dialog/src/use-dialog.js +2 -0
  557. package/lib/components/dialog/src/use-dialog.js.map +1 -1
  558. package/lib/components/divider/index.d.ts +4 -0
  559. package/lib/components/divider/src/divider.d.ts +2 -0
  560. package/lib/components/divider/src/divider.js +4 -0
  561. package/lib/components/divider/src/divider.js.map +1 -1
  562. package/lib/components/divider/src/divider.vue.d.ts +4 -0
  563. package/lib/components/divider/src/divider.vue_vue_type_script_lang.js.map +1 -1
  564. package/lib/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.js +3 -2
  565. package/lib/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.js.map +1 -1
  566. package/lib/components/drawer/index.d.ts +66 -208
  567. package/lib/components/drawer/index.js +8 -8
  568. package/lib/components/drawer/index.js.map +1 -1
  569. package/lib/components/drawer/src/drawer.d.ts +35 -0
  570. package/lib/components/drawer/src/drawer.js +33 -0
  571. package/lib/components/drawer/src/drawer.js.map +1 -0
  572. package/lib/components/drawer/src/drawer.vue.d.ts +129 -0
  573. package/lib/components/drawer/src/drawer.vue_vue_type_script_lang.js +41 -0
  574. package/lib/components/drawer/src/drawer.vue_vue_type_script_lang.js.map +1 -0
  575. package/lib/components/drawer/src/{index.vue_vue_type_template_id_052d0d8e_lang.js → drawer.vue_vue_type_template_id_e0557736_lang.js} +1 -1
  576. package/lib/components/drawer/src/drawer.vue_vue_type_template_id_e0557736_lang.js.map +1 -0
  577. package/lib/components/drawer/src/drawer2.js +12 -0
  578. package/lib/components/drawer/src/drawer2.js.map +1 -0
  579. package/lib/components/dropdown/index.d.ts +3 -3
  580. package/lib/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
  581. package/lib/components/dropdown/src/dropdown.vue.d.ts +1 -1
  582. package/lib/components/dropdown/src/dropdown.vue_vue_type_script_lang.js +5 -5
  583. package/lib/components/dropdown/src/dropdown.vue_vue_type_script_lang.js.map +1 -1
  584. package/lib/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.js.map +1 -1
  585. package/lib/components/dropdown/src/useDropdown.d.ts +0 -1
  586. package/lib/components/dropdown/src/useDropdown.js +0 -2
  587. package/lib/components/dropdown/src/useDropdown.js.map +1 -1
  588. package/lib/components/form/index.d.ts +4 -4
  589. package/lib/components/form/src/form-item.vue.d.ts +2 -2
  590. package/lib/components/form/src/form-item.vue_vue_type_script_lang.js +3 -5
  591. package/lib/components/form/src/form-item.vue_vue_type_script_lang.js.map +1 -1
  592. package/lib/components/form/src/form-item.vue_vue_type_template_id_24eda48b_lang.js.map +1 -1
  593. package/lib/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.js +10 -10
  594. package/lib/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.js.map +1 -1
  595. package/lib/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.js.map +1 -1
  596. package/lib/components/index.js +12 -1
  597. package/lib/components/index.js.map +1 -1
  598. package/lib/components/input/index.d.ts +10 -10
  599. package/lib/components/input/src/input.d.ts +2 -2
  600. package/lib/components/input/src/input.js +4 -3
  601. package/lib/components/input/src/input.js.map +1 -1
  602. package/lib/components/input/src/input.vue.d.ts +10 -10
  603. package/lib/components/input/src/input.vue_vue_type_script_lang.js +10 -11
  604. package/lib/components/input/src/input.vue_vue_type_script_lang.js.map +1 -1
  605. package/lib/components/input/src/input.vue_vue_type_template_id_3290dcb6_lang.js.map +1 -1
  606. package/lib/components/input-number/index.d.ts +23 -23
  607. package/lib/components/input-number/src/input-number.vue.d.ts +23 -23
  608. package/lib/components/input-number/src/input-number.vue_vue_type_script_lang.js +10 -9
  609. package/lib/components/input-number/src/input-number.vue_vue_type_script_lang.js.map +1 -1
  610. package/lib/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.js +2 -1
  611. package/lib/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.js.map +1 -1
  612. package/lib/components/link/index.d.ts +2 -2
  613. package/lib/components/link/src/link.vue.d.ts +2 -2
  614. package/lib/components/loading/index.d.ts +52 -13
  615. package/lib/components/loading/index.js +8 -8
  616. package/lib/components/loading/index.js.map +1 -1
  617. package/lib/components/loading/src/directive.d.ts +11 -10
  618. package/lib/components/loading/src/directive.js +45 -26
  619. package/lib/components/loading/src/directive.js.map +1 -1
  620. package/lib/components/loading/src/loading.d.ts +24 -0
  621. package/lib/components/loading/src/loading.js +116 -0
  622. package/lib/components/loading/src/loading.js.map +1 -0
  623. package/lib/components/loading/src/service.d.ts +3 -0
  624. package/lib/components/loading/src/service.js +105 -0
  625. package/lib/components/loading/src/service.js.map +1 -0
  626. package/lib/components/loading/src/types.d.ts +23 -0
  627. package/lib/components/loading/src/types.js +3 -0
  628. package/lib/components/loading/src/types.js.map +1 -0
  629. package/lib/components/menu/src/menu.js +2 -2
  630. package/lib/components/menu/src/menu.js.map +1 -1
  631. package/lib/components/menu/src/sub-menu.js +2 -2
  632. package/lib/components/menu/src/sub-menu.js.map +1 -1
  633. package/lib/components/message/src/message.d.ts +1 -1
  634. package/lib/components/message/src/message.vue.d.ts +4 -3
  635. package/lib/components/message/src/message.vue_vue_type_script_lang.js +2 -0
  636. package/lib/components/message/src/message.vue_vue_type_script_lang.js.map +1 -1
  637. package/lib/components/message/src/message.vue_vue_type_template_id_031967c2_lang.js +51 -54
  638. package/lib/components/message/src/message.vue_vue_type_template_id_031967c2_lang.js.map +1 -1
  639. package/lib/components/message-box/src/index.vue.d.ts +1840 -0
  640. package/lib/components/notification/src/notification.d.ts +1 -1
  641. package/lib/components/notification/src/notification.vue.d.ts +5 -5
  642. package/lib/components/page-header/src/page-header.js +2 -2
  643. package/lib/components/page-header/src/page-header.js.map +1 -1
  644. package/lib/components/pagination/src/components/next.vue_vue_type_script_lang.js +2 -2
  645. package/lib/components/pagination/src/components/next.vue_vue_type_script_lang.js.map +1 -1
  646. package/lib/components/pagination/src/components/next.vue_vue_type_template_id_93fbb39e_lang.js.map +1 -1
  647. package/lib/components/pagination/src/components/pager.vue_vue_type_script_lang.js +4 -4
  648. package/lib/components/pagination/src/components/pager.vue_vue_type_script_lang.js.map +1 -1
  649. package/lib/components/pagination/src/components/pager.vue_vue_type_template_id_0bfc9916_lang.js.map +1 -1
  650. package/lib/components/pagination/src/components/prev.vue_vue_type_script_lang.js +2 -2
  651. package/lib/components/pagination/src/components/prev.vue_vue_type_script_lang.js.map +1 -1
  652. package/lib/components/pagination/src/components/prev.vue_vue_type_template_id_15259d71_lang.js.map +1 -1
  653. package/lib/components/popconfirm/index.d.ts +2 -2
  654. package/lib/components/popconfirm/src/popconfirm.js +2 -2
  655. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  656. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +2 -2
  657. package/lib/components/popover/index.d.ts +2 -2
  658. package/lib/components/popover/src/index.vue.d.ts +1 -1
  659. package/lib/components/popper/index.d.ts +3480 -0
  660. package/lib/components/popper/src/index.vue.d.ts +1737 -0
  661. package/lib/components/popper/src/use-popper/index.d.ts +1540 -1
  662. package/lib/components/progress/index.d.ts +81 -4
  663. package/lib/components/progress/index.js +7 -8
  664. package/lib/components/progress/index.js.map +1 -1
  665. package/lib/components/progress/src/progress.d.ts +22 -0
  666. package/lib/components/progress/src/progress.js +66 -0
  667. package/lib/components/progress/src/progress.js.map +1 -0
  668. package/lib/components/progress/src/progress.vue.d.ts +81 -0
  669. package/lib/components/progress/src/progress.vue_vue_type_script_lang.js +146 -0
  670. package/lib/components/progress/src/progress.vue_vue_type_script_lang.js.map +1 -0
  671. package/lib/components/progress/src/{index.vue_vue_type_template_id_556e268a_lang.js → progress.vue_vue_type_template_id_9158c3b6_lang.js} +1 -1
  672. package/lib/components/progress/src/progress.vue_vue_type_template_id_9158c3b6_lang.js.map +1 -0
  673. package/lib/components/progress/src/progress2.js +12 -0
  674. package/lib/components/progress/src/progress2.js.map +1 -0
  675. package/lib/components/radio/index.d.ts +36 -40
  676. package/lib/components/radio/src/radio-button.d.ts +2 -2
  677. package/lib/components/radio/src/radio-button.vue.d.ts +8 -8
  678. package/lib/components/radio/src/radio-group.d.ts +2 -2
  679. package/lib/components/radio/src/radio-group.js +3 -2
  680. package/lib/components/radio/src/radio-group.js.map +1 -1
  681. package/lib/components/radio/src/radio-group.vue.d.ts +6 -8
  682. package/lib/components/radio/src/radio-group.vue_vue_type_script_lang.js +1 -3
  683. package/lib/components/radio/src/radio-group.vue_vue_type_script_lang.js.map +1 -1
  684. package/lib/components/radio/src/radio-group.vue_vue_type_template_id_53ef81f9_lang.js.map +1 -1
  685. package/lib/components/radio/src/radio.d.ts +5 -5
  686. package/lib/components/radio/src/radio.js +5 -6
  687. package/lib/components/radio/src/radio.js.map +1 -1
  688. package/lib/components/radio/src/radio.vue.d.ts +8 -8
  689. package/lib/components/rate/src/rate.js +4 -4
  690. package/lib/components/rate/src/rate.js.map +1 -1
  691. package/lib/components/rate/src/rate.vue_vue_type_script_lang.js +3 -3
  692. package/lib/components/rate/src/rate.vue_vue_type_script_lang.js.map +1 -1
  693. package/lib/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.js.map +1 -1
  694. package/lib/components/result/index.d.ts +3 -3
  695. package/lib/components/result/src/result.d.ts +1 -1
  696. package/lib/components/result/src/result.js +5 -5
  697. package/lib/components/result/src/result.js.map +1 -1
  698. package/lib/components/result/src/result.vue.d.ts +3 -3
  699. package/lib/components/select/index.d.ts +14 -7
  700. package/lib/components/select/src/select.vue.d.ts +14 -7
  701. package/lib/components/select/src/select.vue_vue_type_script_lang.js +7 -3
  702. package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
  703. package/lib/components/select/src/select.vue_vue_type_template_id_33774f85_lang.js +6 -6
  704. package/lib/components/select/src/select.vue_vue_type_template_id_33774f85_lang.js.map +1 -1
  705. package/lib/components/select/src/useSelect.d.ts +76 -0
  706. package/lib/components/select/src/useSelect.js +2 -2
  707. package/lib/components/select/src/useSelect.js.map +1 -1
  708. package/lib/components/select-v2/index.d.ts +14 -14
  709. package/lib/components/select-v2/src/defaults.js +2 -2
  710. package/lib/components/select-v2/src/defaults.js.map +1 -1
  711. package/lib/components/select-v2/src/select.vue.d.ts +7 -7
  712. package/lib/components/select-v2/src/useSelect.d.ts +1 -1
  713. package/lib/components/select-v2/src/useSelect.js +9 -10
  714. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  715. package/lib/components/skeleton/index.d.ts +6 -6
  716. package/lib/components/skeleton/src/skeleton-item.d.ts +1 -1
  717. package/lib/components/skeleton/src/skeleton-item.vue.d.ts +3 -3
  718. package/lib/components/slider/index.d.ts +307 -0
  719. package/lib/components/slider/src/index.vue.d.ts +155 -0
  720. package/lib/components/slider/src/useSlide.d.ts +21 -0
  721. package/lib/components/steps/index.d.ts +4 -4
  722. package/lib/components/steps/src/item.vue.d.ts +2 -2
  723. package/lib/components/steps/src/item.vue_vue_type_script_lang.js +3 -3
  724. package/lib/components/steps/src/item.vue_vue_type_script_lang.js.map +1 -1
  725. package/lib/components/steps/src/item.vue_vue_type_template_id_6ec47f4b_lang.js.map +1 -1
  726. package/lib/components/switch/index.d.ts +99 -4
  727. package/lib/components/switch/index.js +8 -8
  728. package/lib/components/switch/index.js.map +1 -1
  729. package/lib/components/switch/src/switch.d.ts +31 -0
  730. package/lib/components/switch/src/switch.js +92 -0
  731. package/lib/components/switch/src/switch.js.map +1 -0
  732. package/lib/components/switch/src/switch.vue.d.ts +98 -0
  733. package/lib/components/switch/src/{index.vue_vue_type_script_lang.js → switch.vue_vue_type_script_lang.js} +28 -101
  734. package/lib/components/switch/src/switch.vue_vue_type_script_lang.js.map +1 -0
  735. package/lib/components/switch/src/{index.vue_vue_type_template_id_ee4fcade_lang.js → switch.vue_vue_type_template_id_538fbc85_lang.js} +1 -1
  736. package/lib/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.js.map +1 -0
  737. package/lib/components/switch/src/switch2.js +12 -0
  738. package/lib/components/switch/src/switch2.js.map +1 -0
  739. package/lib/components/table/index.d.ts +9 -9
  740. package/lib/components/table/src/config.js +4 -4
  741. package/lib/components/table/src/config.js.map +1 -1
  742. package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js +3 -3
  743. package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js.map +1 -1
  744. package/lib/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.js.map +1 -1
  745. package/lib/components/table/src/table/style-helper.d.ts +1 -1
  746. package/lib/components/table/src/table/style-helper.js +6 -8
  747. package/lib/components/table/src/table/style-helper.js.map +1 -1
  748. package/lib/components/table/src/table-column/defaults.d.ts +2 -2
  749. package/lib/components/table/src/table-column/defaults.js.map +1 -1
  750. package/lib/components/table/src/table-column/index.d.ts +3 -3
  751. package/lib/components/table/src/table.vue.d.ts +3 -3
  752. package/lib/components/table/src/util.js +0 -1
  753. package/lib/components/table/src/util.js.map +1 -1
  754. package/lib/components/tabs/index.d.ts +4 -4
  755. package/lib/components/tabs/src/tab-nav.js +4 -4
  756. package/lib/components/tabs/src/tab-nav.js.map +1 -1
  757. package/lib/components/tabs/src/tab-pane.vue.d.ts +2 -2
  758. package/lib/components/tabs/src/tabs.js +2 -2
  759. package/lib/components/tabs/src/tabs.js.map +1 -1
  760. package/lib/components/tag/src/tag.vue_vue_type_script_lang.js +5 -5
  761. package/lib/components/tag/src/tag.vue_vue_type_script_lang.js.map +1 -1
  762. package/lib/components/tag/src/tag.vue_vue_type_template_id_525996c5_lang.js.map +1 -1
  763. package/lib/components/time-picker/index.d.ts +10 -10
  764. package/lib/components/time-picker/src/common/date-utils.d.ts +1 -1
  765. package/lib/components/time-picker/src/common/date-utils.js +1 -3
  766. package/lib/components/time-picker/src/common/date-utils.js.map +1 -1
  767. package/lib/components/time-picker/src/common/picker.vue.d.ts +6 -6
  768. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js +6 -8
  769. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js.map +1 -1
  770. package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js.map +1 -1
  771. package/lib/components/time-picker/src/common/props.d.ts +1 -1
  772. package/lib/components/time-picker/src/common/props.js +2 -2
  773. package/lib/components/time-picker/src/common/props.js.map +1 -1
  774. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.js +3 -3
  775. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.js.map +1 -1
  776. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_template_id_4fb3c576_lang.js.map +1 -1
  777. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -1
  778. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -1
  779. package/lib/components/time-picker/src/time-picker-com/useTimePicker.d.ts +2 -2
  780. package/lib/components/time-picker/src/time-picker.d.ts +5 -5
  781. package/lib/components/time-select/index.d.ts +4 -4
  782. package/lib/components/time-select/src/time-select.vue.d.ts +2 -2
  783. package/lib/components/time-select/src/time-select.vue_vue_type_script_lang.js +3 -3
  784. package/lib/components/time-select/src/time-select.vue_vue_type_script_lang.js.map +1 -1
  785. package/lib/components/time-select/src/time-select.vue_vue_type_template_id_5beb6389_lang.js.map +1 -1
  786. package/lib/components/timeline/index.d.ts +4 -4
  787. package/lib/components/timeline/src/item.vue.d.ts +2 -2
  788. package/lib/components/tooltip/src/index.js +4 -2
  789. package/lib/components/tooltip/src/index.js.map +1 -1
  790. package/lib/components/transfer/index.d.ts +8 -8
  791. package/lib/components/transfer/src/index.vue.d.ts +4 -4
  792. package/lib/components/transfer/src/index.vue_vue_type_script_lang.js +3 -3
  793. package/lib/components/transfer/src/index.vue_vue_type_script_lang.js.map +1 -1
  794. package/lib/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.js.map +1 -1
  795. package/lib/components/transfer/src/transfer-panel.vue.d.ts +2 -2
  796. package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_lang.js +3 -3
  797. package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_lang.js.map +1 -1
  798. package/lib/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.js.map +1 -1
  799. package/lib/components/tree/index.d.ts +2 -2
  800. package/lib/components/tree/src/tree-node.vue_vue_type_script_lang.js +3 -3
  801. package/lib/components/tree/src/tree-node.vue_vue_type_script_lang.js.map +1 -1
  802. package/lib/components/tree/src/tree-node.vue_vue_type_template_id_62959aba_lang.js.map +1 -1
  803. package/lib/components/tree/src/tree.vue.d.ts +1 -1
  804. package/lib/components/tree-v2/index.d.ts +2 -2
  805. package/lib/components/tree-v2/src/composables/useTree.d.ts +29 -0
  806. package/lib/components/tree-v2/src/tree-node.vue.d.ts +2 -2
  807. package/lib/components/tree-v2/src/tree-node.vue_vue_type_script_lang.js +2 -2
  808. package/lib/components/tree-v2/src/tree-node.vue_vue_type_script_lang.js.map +1 -1
  809. package/lib/components/tree-v2/src/tree-node.vue_vue_type_template_id_71d8f826_lang.js.map +1 -1
  810. package/lib/components/tree-v2/src/tree.vue.d.ts +2 -2
  811. package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js +8 -8
  812. package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js.map +1 -1
  813. package/lib/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.js.map +1 -1
  814. package/lib/components/virtual-list/src/builders/build-list.d.ts +1 -1
  815. package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +1 -1
  816. package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +1 -1
  817. package/lib/components/virtual-list/src/components/scrollbar.d.ts +1 -1
  818. package/lib/defaults.js +1 -1
  819. package/lib/defaults.js.map +1 -1
  820. package/lib/hooks/index.d.ts +2 -0
  821. package/lib/hooks/index.js +46 -41
  822. package/lib/hooks/index.js.map +1 -1
  823. package/lib/hooks/use-common-props/index.d.ts +5 -0
  824. package/lib/hooks/use-common-props/index.js +37 -0
  825. package/lib/hooks/use-common-props/index.js.map +1 -0
  826. package/lib/hooks/use-form-item/index.d.ts +1 -14
  827. package/lib/hooks/use-form-item/index.js +1 -23
  828. package/lib/hooks/use-form-item/index.js.map +1 -1
  829. package/lib/hooks/use-global-config/index.d.ts +4 -1
  830. package/lib/hooks/use-global-config/index.js +7 -5
  831. package/lib/hooks/use-global-config/index.js.map +1 -1
  832. package/lib/hooks/use-locale/index.d.ts +6 -5
  833. package/lib/hooks/use-locale/index.js +8 -5
  834. package/lib/hooks/use-locale/index.js.map +1 -1
  835. package/lib/hooks/use-lockscreen/index.js +4 -0
  836. package/lib/hooks/use-lockscreen/index.js.map +1 -1
  837. package/lib/hooks/use-prop/index.d.ts +2 -0
  838. package/lib/hooks/use-prop/index.js +16 -0
  839. package/lib/hooks/use-prop/index.js.map +1 -0
  840. package/lib/index.d.ts +1 -1
  841. package/lib/index.js +59 -43
  842. package/lib/index.js.map +1 -1
  843. package/lib/locale/index.d.ts +0 -5
  844. package/lib/locale/index.js +0 -63
  845. package/lib/locale/index.js.map +1 -1
  846. package/lib/locale/lang/ca.js +2 -2
  847. package/lib/locale/lang/ca.js.map +1 -1
  848. package/lib/locale/lang/en.js +2 -2
  849. package/lib/locale/lang/en.js.map +1 -1
  850. package/lib/make-installer.d.ts +1 -2
  851. package/lib/make-installer.js +2 -4
  852. package/lib/make-installer.js.map +1 -1
  853. package/lib/plugin.d.ts +2 -47
  854. package/lib/plugin.js +1 -1
  855. package/lib/plugin.js.map +1 -1
  856. package/lib/tokens/form.d.ts +1 -1
  857. package/lib/tokens/form.js.map +1 -1
  858. package/lib/utils/aria.d.ts +1 -0
  859. package/lib/utils/aria.js +2 -1
  860. package/lib/utils/aria.js.map +1 -1
  861. package/lib/utils/config.d.ts +1 -1
  862. package/lib/utils/config.js.map +1 -1
  863. package/lib/utils/icon.js +14 -14
  864. package/lib/utils/icon.js.map +1 -1
  865. package/lib/utils/util.d.ts +8 -2
  866. package/lib/utils/util.js.map +1 -1
  867. package/lib/version.d.ts +1 -1
  868. package/lib/version.js +1 -1
  869. package/lib/version.js.map +1 -1
  870. package/package.json +3 -3
  871. package/tags.json +1 -1
  872. package/theme-chalk/base.css +1 -1
  873. package/theme-chalk/el-autocomplete.css +1 -1
  874. package/theme-chalk/el-cascader-panel.css +1 -1
  875. package/theme-chalk/el-cascader.css +1 -1
  876. package/theme-chalk/el-check-tag.css +1 -1
  877. package/theme-chalk/el-date-picker.css +1 -1
  878. package/theme-chalk/el-divider.css +1 -1
  879. package/theme-chalk/el-dropdown.css +1 -1
  880. package/theme-chalk/el-icon.css +1 -1
  881. package/theme-chalk/el-image.css +1 -1
  882. package/theme-chalk/el-input-number.css +1 -1
  883. package/theme-chalk/el-input.css +1 -1
  884. package/theme-chalk/el-menu.css +1 -1
  885. package/theme-chalk/el-option-item.css +1 -1
  886. package/theme-chalk/el-option.css +1 -1
  887. package/theme-chalk/el-select-dropdown.css +1 -1
  888. package/theme-chalk/el-select-v2.css +1 -1
  889. package/theme-chalk/el-select.css +1 -1
  890. package/theme-chalk/el-steps.css +1 -1
  891. package/theme-chalk/el-table.css +1 -1
  892. package/theme-chalk/el-tabs.css +1 -1
  893. package/theme-chalk/el-time-picker.css +1 -1
  894. package/theme-chalk/el-time-select.css +1 -1
  895. package/theme-chalk/el-transfer.css +1 -1
  896. package/theme-chalk/el-tree.css +1 -1
  897. package/theme-chalk/el-upload.css +1 -1
  898. package/theme-chalk/el-var.css +1 -1
  899. package/theme-chalk/index.css +1 -1
  900. package/theme-chalk/src/check-tag.scss +1 -1
  901. package/theme-chalk/src/common/var.scss +7 -7
  902. package/theme-chalk/src/date-picker/date-table.scss +1 -1
  903. package/theme-chalk/src/date-picker/month-table.scss +1 -1
  904. package/theme-chalk/src/date-picker/time-spinner.scss +1 -1
  905. package/theme-chalk/src/date-picker/year-table.scss +1 -1
  906. package/theme-chalk/src/divider.scss +2 -1
  907. package/theme-chalk/src/dropdown.scss +0 -4
  908. package/theme-chalk/src/icon.scss +1 -2
  909. package/theme-chalk/src/image.scss +4 -4
  910. package/theme-chalk/src/input-number.scss +1 -1
  911. package/theme-chalk/src/input.scss +5 -1
  912. package/theme-chalk/src/menu.scss +1 -1
  913. package/theme-chalk/src/mixins/mixins.scss +1 -1
  914. package/theme-chalk/src/select-v2.scss +1 -1
  915. package/theme-chalk/src/select.scss +22 -18
  916. package/theme-chalk/src/steps.scss +1 -1
  917. package/theme-chalk/src/table.scss +1 -1
  918. package/theme-chalk/src/tabs.scss +1 -1
  919. package/theme-chalk/src/time-select.scss +1 -1
  920. package/theme-chalk/src/upload.scss +1 -1
  921. package/theme-chalk/src/var.scss +1 -1
  922. package/web-types.json +1 -1
  923. package/es/components/calendar/src/index.mjs +0 -7
  924. package/es/components/calendar/src/index.mjs.map +0 -1
  925. package/es/components/calendar/src/index.vue.d.ts +0 -33
  926. package/es/components/calendar/src/index.vue_vue_type_script_lang.mjs.map +0 -1
  927. package/es/components/calendar/src/index.vue_vue_type_template_id_819aa44a_lang.mjs.map +0 -1
  928. package/es/components/drawer/src/index.mjs +0 -7
  929. package/es/components/drawer/src/index.mjs.map +0 -1
  930. package/es/components/drawer/src/index.vue.d.ts +0 -138
  931. package/es/components/drawer/src/index.vue_vue_type_script_lang.mjs +0 -56
  932. package/es/components/drawer/src/index.vue_vue_type_script_lang.mjs.map +0 -1
  933. package/es/components/drawer/src/index.vue_vue_type_template_id_052d0d8e_lang.mjs.map +0 -1
  934. package/es/components/loading/src/createLoadingComponent.d.ts +0 -2
  935. package/es/components/loading/src/createLoadingComponent.mjs +0 -121
  936. package/es/components/loading/src/createLoadingComponent.mjs.map +0 -1
  937. package/es/components/loading/src/index.d.ts +0 -3
  938. package/es/components/loading/src/index.mjs +0 -106
  939. package/es/components/loading/src/index.mjs.map +0 -1
  940. package/es/components/loading/src/loading.type.d.ts +0 -44
  941. package/es/components/loading/src/loading.type.mjs +0 -2
  942. package/es/components/loading/src/loading.type.mjs.map +0 -1
  943. package/es/components/progress/src/index.mjs +0 -7
  944. package/es/components/progress/src/index.mjs.map +0 -1
  945. package/es/components/progress/src/index.vue.d.ts +0 -2
  946. package/es/components/progress/src/index.vue_vue_type_script_lang.mjs.map +0 -1
  947. package/es/components/progress/src/index.vue_vue_type_template_id_556e268a_lang.mjs.map +0 -1
  948. package/es/components/switch/src/index.mjs +0 -7
  949. package/es/components/switch/src/index.mjs.map +0 -1
  950. package/es/components/switch/src/index.vue.d.ts +0 -2
  951. package/es/components/switch/src/index.vue_vue_type_script_lang.mjs +0 -190
  952. package/es/components/switch/src/index.vue_vue_type_script_lang.mjs.map +0 -1
  953. package/es/components/switch/src/index.vue_vue_type_template_id_ee4fcade_lang.mjs.map +0 -1
  954. package/lib/components/calendar/src/index.js +0 -12
  955. package/lib/components/calendar/src/index.js.map +0 -1
  956. package/lib/components/calendar/src/index.vue.d.ts +0 -33
  957. package/lib/components/calendar/src/index.vue_vue_type_script_lang.js.map +0 -1
  958. package/lib/components/calendar/src/index.vue_vue_type_template_id_819aa44a_lang.js.map +0 -1
  959. package/lib/components/drawer/src/index.js +0 -12
  960. package/lib/components/drawer/src/index.js.map +0 -1
  961. package/lib/components/drawer/src/index.vue.d.ts +0 -138
  962. package/lib/components/drawer/src/index.vue_vue_type_script_lang.js +0 -60
  963. package/lib/components/drawer/src/index.vue_vue_type_script_lang.js.map +0 -1
  964. package/lib/components/drawer/src/index.vue_vue_type_template_id_052d0d8e_lang.js.map +0 -1
  965. package/lib/components/loading/src/createLoadingComponent.d.ts +0 -2
  966. package/lib/components/loading/src/createLoadingComponent.js +0 -125
  967. package/lib/components/loading/src/createLoadingComponent.js.map +0 -1
  968. package/lib/components/loading/src/index.d.ts +0 -3
  969. package/lib/components/loading/src/index.js +0 -110
  970. package/lib/components/loading/src/index.js.map +0 -1
  971. package/lib/components/loading/src/loading.type.d.ts +0 -44
  972. package/lib/components/loading/src/loading.type.js +0 -3
  973. package/lib/components/loading/src/loading.type.js.map +0 -1
  974. package/lib/components/progress/src/index.js +0 -12
  975. package/lib/components/progress/src/index.js.map +0 -1
  976. package/lib/components/progress/src/index.vue.d.ts +0 -2
  977. package/lib/components/progress/src/index.vue_vue_type_script_lang.js +0 -213
  978. package/lib/components/progress/src/index.vue_vue_type_script_lang.js.map +0 -1
  979. package/lib/components/progress/src/index.vue_vue_type_template_id_556e268a_lang.js.map +0 -1
  980. package/lib/components/switch/src/index.js +0 -12
  981. package/lib/components/switch/src/index.js.map +0 -1
  982. package/lib/components/switch/src/index.vue.d.ts +0 -2
  983. package/lib/components/switch/src/index.vue_vue_type_script_lang.js.map +0 -1
  984. package/lib/components/switch/src/index.vue_vue_type_template_id_ee4fcade_lang.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"image-viewer.vue_vue_type_template_id_4b22ad85_lang.mjs","sources":["../../../../../../packages/components/image-viewer/src/image-viewer.vue?vue&type=template&id=4b22ad85&lang.js"],"sourcesContent":["<template>\n <transition name=\"viewer-fade\">\n <div\n ref=\"wrapper\"\n :tabindex=\"-1\"\n class=\"el-image-viewer__wrapper\"\n :style=\"{ zIndex }\"\n >\n <div\n class=\"el-image-viewer__mask\"\n @click.self=\"hideOnClickModal && hide()\"\n />\n\n <!-- CLOSE -->\n <span class=\"el-image-viewer__btn el-image-viewer__close\" @click=\"hide\">\n <el-icon><close /></el-icon>\n </span>\n\n <!-- ARROW -->\n <template v-if=\"!isSingle\">\n <span\n class=\"el-image-viewer__btn el-image-viewer__prev\"\n :class=\"{ 'is-disabled': !infinite && isFirst }\"\n @click=\"prev\"\n >\n <el-icon><arrow-left /></el-icon>\n </span>\n <span\n class=\"el-image-viewer__btn el-image-viewer__next\"\n :class=\"{ 'is-disabled': !infinite && isLast }\"\n @click=\"next\"\n >\n <el-icon><arrow-right /></el-icon>\n </span>\n </template>\n <!-- ACTIONS -->\n <div class=\"el-image-viewer__btn el-image-viewer__actions\">\n <div class=\"el-image-viewer__actions__inner\">\n <el-icon @click=\"handleActions('zoomOut')\">\n <zoom-out />\n </el-icon>\n <el-icon @click=\"handleActions('zoomIn')\">\n <zoom-in />\n </el-icon>\n <i class=\"el-image-viewer__actions__divider\"></i>\n <el-icon @click=\"toggleMode\">\n <component :is=\"mode.icon\" />\n </el-icon>\n <i class=\"el-image-viewer__actions__divider\"></i>\n <el-icon @click=\"handleActions('anticlockwise')\">\n <refresh-left />\n </el-icon>\n <el-icon @click=\"handleActions('clockwise')\">\n <refresh-right />\n </el-icon>\n </div>\n </div>\n <!-- CANVAS -->\n <div class=\"el-image-viewer__canvas\">\n <img\n v-for=\"(url, i) in urlList\"\n v-show=\"i === index\"\n ref=\"img\"\n :key=\"url\"\n :src=\"url\"\n :style=\"imgStyle\"\n class=\"el-image-viewer__img\"\n @load=\"handleImgLoad\"\n @error=\"handleImgError\"\n @mousedown=\"handleMouseDown\"\n />\n </div>\n <slot />\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n ref,\n onMounted,\n watch,\n nextTick,\n effectScope,\n markRaw,\n} from 'vue'\nimport { useEventListener } from '@vueuse/core'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { rafThrottle, isFirefox } from '@element-plus/utils/util'\nimport {\n Close,\n ArrowLeft,\n ArrowRight,\n ZoomOut,\n ZoomIn,\n RefreshLeft,\n RefreshRight,\n FullScreen,\n ScaleToOriginal,\n} from '@element-plus/icons'\nimport { imageViewerProps, imageViewerEmits } from './image-viewer'\n\nimport type { CSSProperties } from 'vue'\n\nconst Mode = {\n CONTAIN: {\n name: 'contain',\n icon: markRaw(FullScreen),\n },\n ORIGINAL: {\n name: 'original',\n icon: markRaw(ScaleToOriginal),\n },\n}\n\nconst mousewheelEventName = isFirefox() ? 'DOMMouseScroll' : 'mousewheel'\nexport type ImageViewerAction =\n | 'zoomIn'\n | 'zoomOut'\n | 'clockwise'\n | 'anticlockwise'\n\nexport default defineComponent({\n name: 'ElImageViewer',\n components: {\n ElIcon,\n Close,\n ArrowLeft,\n ArrowRight,\n ZoomOut,\n ZoomIn,\n RefreshLeft,\n RefreshRight,\n },\n props: imageViewerProps,\n emits: imageViewerEmits,\n\n setup(props, { emit }) {\n const { t } = useLocale()\n const wrapper = ref<HTMLDivElement>()\n const img = ref<HTMLImageElement>()\n\n const scopeEventListener = effectScope()\n\n const loading = ref(true)\n const index = ref(props.initialIndex)\n const mode = ref(Mode.CONTAIN)\n const transform = ref({\n scale: 1,\n deg: 0,\n offsetX: 0,\n offsetY: 0,\n enableTransition: false,\n })\n\n const isSingle = computed(() => {\n const { urlList } = props\n return urlList.length <= 1\n })\n\n const isFirst = computed(() => {\n return index.value === 0\n })\n\n const isLast = computed(() => {\n return index.value === props.urlList.length - 1\n })\n\n const currentImg = computed(() => {\n return props.urlList[index.value]\n })\n\n const imgStyle = computed(() => {\n const { scale, deg, offsetX, offsetY, enableTransition } = transform.value\n const style: CSSProperties = {\n transform: `scale(${scale}) rotate(${deg}deg)`,\n transition: enableTransition ? 'transform .3s' : '',\n marginLeft: `${offsetX}px`,\n marginTop: `${offsetY}px`,\n }\n if (mode.value.name === Mode.CONTAIN.name) {\n style.maxWidth = style.maxHeight = '100%'\n }\n return style\n })\n\n function hide() {\n unregisterEventListener()\n emit('close')\n }\n\n function registerEventListener() {\n const keydownHandler = rafThrottle((e: KeyboardEvent) => {\n switch (e.code) {\n // ESC\n case EVENT_CODE.esc:\n hide()\n break\n // SPACE\n case EVENT_CODE.space:\n toggleMode()\n break\n // LEFT_ARROW\n case EVENT_CODE.left:\n prev()\n break\n // UP_ARROW\n case EVENT_CODE.up:\n handleActions('zoomIn')\n break\n // RIGHT_ARROW\n case EVENT_CODE.right:\n next()\n break\n // DOWN_ARROW\n case EVENT_CODE.down:\n handleActions('zoomOut')\n break\n }\n })\n const mousewheelHandler = rafThrottle(\n (e: WheelEvent | any /* TODO: wheelDelta is deprecated */) => {\n const delta = e.wheelDelta ? e.wheelDelta : -e.detail\n if (delta > 0) {\n handleActions('zoomIn', {\n zoomRate: 0.015,\n enableTransition: false,\n })\n } else {\n handleActions('zoomOut', {\n zoomRate: 0.015,\n enableTransition: false,\n })\n }\n }\n )\n\n scopeEventListener.run(() => {\n useEventListener(document, 'keydown', keydownHandler)\n useEventListener(document, mousewheelEventName, mousewheelHandler)\n })\n }\n\n function unregisterEventListener() {\n scopeEventListener.stop()\n }\n\n function handleImgLoad() {\n loading.value = false\n }\n\n function handleImgError(e: Event) {\n loading.value = false\n ;(e.target as HTMLImageElement).alt = t('el.image.error')\n }\n\n function handleMouseDown(e: MouseEvent) {\n if (loading.value || e.button !== 0 || !wrapper.value) return\n\n const { offsetX, offsetY } = transform.value\n const startX = e.pageX\n const startY = e.pageY\n\n const divLeft = wrapper.value.clientLeft\n const divRight = wrapper.value.clientLeft + wrapper.value.clientWidth\n const divTop = wrapper.value.clientTop\n const divBottom = wrapper.value.clientTop + wrapper.value.clientHeight\n\n const dragHandler = rafThrottle((ev: MouseEvent) => {\n transform.value = {\n ...transform.value,\n offsetX: offsetX + ev.pageX - startX,\n offsetY: offsetY + ev.pageY - startY,\n }\n })\n const removeMousemove = useEventListener(\n document,\n 'mousemove',\n dragHandler\n )\n useEventListener(document, 'mouseup', (evt) => {\n const mouseX = evt.pageX\n const mouseY = evt.pageY\n if (\n mouseX < divLeft ||\n mouseX > divRight ||\n mouseY < divTop ||\n mouseY > divBottom\n ) {\n reset()\n }\n removeMousemove()\n })\n\n e.preventDefault()\n }\n\n function reset() {\n transform.value = {\n scale: 1,\n deg: 0,\n offsetX: 0,\n offsetY: 0,\n enableTransition: false,\n }\n }\n\n function toggleMode() {\n if (loading.value) return\n\n const modeNames = Object.keys(Mode)\n const modeValues = Object.values(Mode)\n const currentMode = mode.value.name\n const index = modeValues.findIndex((i) => i.name === currentMode)\n const nextIndex = (index + 1) % modeNames.length\n mode.value = Mode[modeNames[nextIndex]]\n reset()\n }\n\n function prev() {\n if (isFirst.value && !props.infinite) return\n const len = props.urlList.length\n index.value = (index.value - 1 + len) % len\n }\n\n function next() {\n if (isLast.value && !props.infinite) return\n const len = props.urlList.length\n index.value = (index.value + 1) % len\n }\n\n function handleActions(action: ImageViewerAction, options = {}) {\n if (loading.value) return\n const { zoomRate, rotateDeg, enableTransition } = {\n zoomRate: 0.2,\n rotateDeg: 90,\n enableTransition: true,\n ...options,\n }\n switch (action) {\n case 'zoomOut':\n if (transform.value.scale > 0.2) {\n transform.value.scale = parseFloat(\n (transform.value.scale - zoomRate).toFixed(3)\n )\n }\n break\n case 'zoomIn':\n transform.value.scale = parseFloat(\n (transform.value.scale + zoomRate).toFixed(3)\n )\n break\n case 'clockwise':\n transform.value.deg += rotateDeg\n break\n case 'anticlockwise':\n transform.value.deg -= rotateDeg\n break\n }\n transform.value.enableTransition = enableTransition\n }\n\n watch(currentImg, () => {\n nextTick(() => {\n const $img = img.value\n if (!$img?.complete) {\n loading.value = true\n }\n })\n })\n\n watch(index, (val) => {\n reset()\n emit('switch', val)\n })\n\n onMounted(() => {\n registerEventListener()\n // add tabindex then wrapper can be focusable via Javascript\n // focus wrapper so arrow key can't cause inner scroll behavior underneath\n wrapper.value?.focus?.()\n })\n\n return {\n index,\n wrapper,\n img,\n isSingle,\n isFirst,\n isLast,\n currentImg,\n imgStyle,\n mode,\n handleActions,\n prev,\n next,\n hide,\n toggleMode,\n handleImgLoad,\n handleImgError,\n handleMouseDown,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_createElementVNode","_createCommentVNode","_createVNode","_createElementBlock","_renderSlot"],"mappings":";;qBAoCW,OAAM;qBACJ,OAAM;6DAON,OAAM;6DAIN,OAAM;qBAUR,OAAM;;;;;;;;;;;sBAzDfA,0BAAY,MAAK;qBACf;MAAAC;QACE,KAAI;AAAA,QACH,UAAU;AAAA,QACX,OAAM;AAAA,QACL,gCAAS;;QAEVA;UACE,OAAM;AAAA,UACL,6DAAY,yBAAoB;;QAGnCC;QACAD;UAAM,OAAM;AAAA,UAA+C,gDAAO;;UAChEE;6BAAS;cAAAA,YAAS;AAAA;AAAA;;;QAGpBD;SACiB,8BAAjBE;UACEH;YACE,uBAAM,gEACoB,iBAAY;YACrC,gDAAO;;YAERE;+BAAS;gBAAAA,YAAc;AAAA;AAAA;;;UAEzBF;YACE,uBAAM,gEACoB,iBAAY;YACrC,gDAAO;;YAERE;+BAAS;gBAAAA,YAAe;AAAA;AAAA;;;;QAG5BD;QACAD,0BAAA;UACEA,0BAAA;YACEE;cAAU,+CAAO;;+BACf;gBAAAA;;;;YAEFA;cAAU,+CAAO;;+BACf;gBAAAA;;;;YAEF;AAAA,YACAA,kCAAU,SAAO;+BACf;8BAAAH,oCAAgB,UAAK;AAAA;AAAA;;YAEvB;AAAA,YACAG;cAAU,+CAAO;;+BACf;gBAAAA;;;;YAEFA;cAAU,+CAAO;;+BACf;gBAAAA;;;;;;QAIND;QACAD,0BAAA;4BACEG,8CACqB,eAAX,KAAK;gDADfA;cAGE,KAAI;AAAA,cACH,KAAK;AAAA,cACL,KAAK;AAAA,cACL,sBAAO;cACR,OAAM;AAAA,cACL,+CAAM;cACN,gDAAO;cACP,sDAAW;;sBARJ,MAAM;;;;QAWlBC;;;;;;;;;"}
1
+ {"version":3,"file":"image-viewer.vue_vue_type_template_id_4b22ad85_lang.mjs","sources":["../../../../../../packages/components/image-viewer/src/image-viewer.vue?vue&type=template&id=4b22ad85&lang.js"],"sourcesContent":["<template>\n <transition name=\"viewer-fade\">\n <div\n ref=\"wrapper\"\n :tabindex=\"-1\"\n class=\"el-image-viewer__wrapper\"\n :style=\"{ zIndex }\"\n >\n <div\n class=\"el-image-viewer__mask\"\n @click.self=\"hideOnClickModal && hide()\"\n />\n\n <!-- CLOSE -->\n <span class=\"el-image-viewer__btn el-image-viewer__close\" @click=\"hide\">\n <el-icon><close /></el-icon>\n </span>\n\n <!-- ARROW -->\n <template v-if=\"!isSingle\">\n <span\n class=\"el-image-viewer__btn el-image-viewer__prev\"\n :class=\"{ 'is-disabled': !infinite && isFirst }\"\n @click=\"prev\"\n >\n <el-icon><arrow-left /></el-icon>\n </span>\n <span\n class=\"el-image-viewer__btn el-image-viewer__next\"\n :class=\"{ 'is-disabled': !infinite && isLast }\"\n @click=\"next\"\n >\n <el-icon><arrow-right /></el-icon>\n </span>\n </template>\n <!-- ACTIONS -->\n <div class=\"el-image-viewer__btn el-image-viewer__actions\">\n <div class=\"el-image-viewer__actions__inner\">\n <el-icon @click=\"handleActions('zoomOut')\">\n <zoom-out />\n </el-icon>\n <el-icon @click=\"handleActions('zoomIn')\">\n <zoom-in />\n </el-icon>\n <i class=\"el-image-viewer__actions__divider\"></i>\n <el-icon @click=\"toggleMode\">\n <component :is=\"mode.icon\" />\n </el-icon>\n <i class=\"el-image-viewer__actions__divider\"></i>\n <el-icon @click=\"handleActions('anticlockwise')\">\n <refresh-left />\n </el-icon>\n <el-icon @click=\"handleActions('clockwise')\">\n <refresh-right />\n </el-icon>\n </div>\n </div>\n <!-- CANVAS -->\n <div class=\"el-image-viewer__canvas\">\n <img\n v-for=\"(url, i) in urlList\"\n v-show=\"i === index\"\n ref=\"img\"\n :key=\"url\"\n :src=\"url\"\n :style=\"imgStyle\"\n class=\"el-image-viewer__img\"\n @load=\"handleImgLoad\"\n @error=\"handleImgError\"\n @mousedown=\"handleMouseDown\"\n />\n </div>\n <slot />\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n ref,\n onMounted,\n watch,\n nextTick,\n effectScope,\n markRaw,\n} from 'vue'\nimport { useEventListener } from '@vueuse/core'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { rafThrottle, isFirefox } from '@element-plus/utils/util'\nimport {\n Close,\n ArrowLeft,\n ArrowRight,\n ZoomOut,\n ZoomIn,\n RefreshLeft,\n RefreshRight,\n FullScreen,\n ScaleToOriginal,\n} from '@element-plus/icons-vue'\nimport { imageViewerProps, imageViewerEmits } from './image-viewer'\n\nimport type { CSSProperties } from 'vue'\n\nconst Mode = {\n CONTAIN: {\n name: 'contain',\n icon: markRaw(FullScreen),\n },\n ORIGINAL: {\n name: 'original',\n icon: markRaw(ScaleToOriginal),\n },\n}\n\nconst mousewheelEventName = isFirefox() ? 'DOMMouseScroll' : 'mousewheel'\nexport type ImageViewerAction =\n | 'zoomIn'\n | 'zoomOut'\n | 'clockwise'\n | 'anticlockwise'\n\nexport default defineComponent({\n name: 'ElImageViewer',\n components: {\n ElIcon,\n Close,\n ArrowLeft,\n ArrowRight,\n ZoomOut,\n ZoomIn,\n RefreshLeft,\n RefreshRight,\n },\n props: imageViewerProps,\n emits: imageViewerEmits,\n\n setup(props, { emit }) {\n const { t } = useLocale()\n const wrapper = ref<HTMLDivElement>()\n const img = ref<HTMLImageElement>()\n\n const scopeEventListener = effectScope()\n\n const loading = ref(true)\n const index = ref(props.initialIndex)\n const mode = ref(Mode.CONTAIN)\n const transform = ref({\n scale: 1,\n deg: 0,\n offsetX: 0,\n offsetY: 0,\n enableTransition: false,\n })\n\n const isSingle = computed(() => {\n const { urlList } = props\n return urlList.length <= 1\n })\n\n const isFirst = computed(() => {\n return index.value === 0\n })\n\n const isLast = computed(() => {\n return index.value === props.urlList.length - 1\n })\n\n const currentImg = computed(() => {\n return props.urlList[index.value]\n })\n\n const imgStyle = computed(() => {\n const { scale, deg, offsetX, offsetY, enableTransition } = transform.value\n const style: CSSProperties = {\n transform: `scale(${scale}) rotate(${deg}deg)`,\n transition: enableTransition ? 'transform .3s' : '',\n marginLeft: `${offsetX}px`,\n marginTop: `${offsetY}px`,\n }\n if (mode.value.name === Mode.CONTAIN.name) {\n style.maxWidth = style.maxHeight = '100%'\n }\n return style\n })\n\n function hide() {\n unregisterEventListener()\n emit('close')\n }\n\n function registerEventListener() {\n const keydownHandler = rafThrottle((e: KeyboardEvent) => {\n switch (e.code) {\n // ESC\n case EVENT_CODE.esc:\n hide()\n break\n // SPACE\n case EVENT_CODE.space:\n toggleMode()\n break\n // LEFT_ARROW\n case EVENT_CODE.left:\n prev()\n break\n // UP_ARROW\n case EVENT_CODE.up:\n handleActions('zoomIn')\n break\n // RIGHT_ARROW\n case EVENT_CODE.right:\n next()\n break\n // DOWN_ARROW\n case EVENT_CODE.down:\n handleActions('zoomOut')\n break\n }\n })\n const mousewheelHandler = rafThrottle(\n (e: WheelEvent | any /* TODO: wheelDelta is deprecated */) => {\n const delta = e.wheelDelta ? e.wheelDelta : -e.detail\n if (delta > 0) {\n handleActions('zoomIn', {\n zoomRate: 0.015,\n enableTransition: false,\n })\n } else {\n handleActions('zoomOut', {\n zoomRate: 0.015,\n enableTransition: false,\n })\n }\n }\n )\n\n scopeEventListener.run(() => {\n useEventListener(document, 'keydown', keydownHandler)\n useEventListener(document, mousewheelEventName, mousewheelHandler)\n })\n }\n\n function unregisterEventListener() {\n scopeEventListener.stop()\n }\n\n function handleImgLoad() {\n loading.value = false\n }\n\n function handleImgError(e: Event) {\n loading.value = false\n ;(e.target as HTMLImageElement).alt = t('el.image.error')\n }\n\n function handleMouseDown(e: MouseEvent) {\n if (loading.value || e.button !== 0 || !wrapper.value) return\n\n const { offsetX, offsetY } = transform.value\n const startX = e.pageX\n const startY = e.pageY\n\n const divLeft = wrapper.value.clientLeft\n const divRight = wrapper.value.clientLeft + wrapper.value.clientWidth\n const divTop = wrapper.value.clientTop\n const divBottom = wrapper.value.clientTop + wrapper.value.clientHeight\n\n const dragHandler = rafThrottle((ev: MouseEvent) => {\n transform.value = {\n ...transform.value,\n offsetX: offsetX + ev.pageX - startX,\n offsetY: offsetY + ev.pageY - startY,\n }\n })\n const removeMousemove = useEventListener(\n document,\n 'mousemove',\n dragHandler\n )\n useEventListener(document, 'mouseup', (evt) => {\n const mouseX = evt.pageX\n const mouseY = evt.pageY\n if (\n mouseX < divLeft ||\n mouseX > divRight ||\n mouseY < divTop ||\n mouseY > divBottom\n ) {\n reset()\n }\n removeMousemove()\n })\n\n e.preventDefault()\n }\n\n function reset() {\n transform.value = {\n scale: 1,\n deg: 0,\n offsetX: 0,\n offsetY: 0,\n enableTransition: false,\n }\n }\n\n function toggleMode() {\n if (loading.value) return\n\n const modeNames = Object.keys(Mode)\n const modeValues = Object.values(Mode)\n const currentMode = mode.value.name\n const index = modeValues.findIndex((i) => i.name === currentMode)\n const nextIndex = (index + 1) % modeNames.length\n mode.value = Mode[modeNames[nextIndex]]\n reset()\n }\n\n function prev() {\n if (isFirst.value && !props.infinite) return\n const len = props.urlList.length\n index.value = (index.value - 1 + len) % len\n }\n\n function next() {\n if (isLast.value && !props.infinite) return\n const len = props.urlList.length\n index.value = (index.value + 1) % len\n }\n\n function handleActions(action: ImageViewerAction, options = {}) {\n if (loading.value) return\n const { zoomRate, rotateDeg, enableTransition } = {\n zoomRate: 0.2,\n rotateDeg: 90,\n enableTransition: true,\n ...options,\n }\n switch (action) {\n case 'zoomOut':\n if (transform.value.scale > 0.2) {\n transform.value.scale = parseFloat(\n (transform.value.scale - zoomRate).toFixed(3)\n )\n }\n break\n case 'zoomIn':\n transform.value.scale = parseFloat(\n (transform.value.scale + zoomRate).toFixed(3)\n )\n break\n case 'clockwise':\n transform.value.deg += rotateDeg\n break\n case 'anticlockwise':\n transform.value.deg -= rotateDeg\n break\n }\n transform.value.enableTransition = enableTransition\n }\n\n watch(currentImg, () => {\n nextTick(() => {\n const $img = img.value\n if (!$img?.complete) {\n loading.value = true\n }\n })\n })\n\n watch(index, (val) => {\n reset()\n emit('switch', val)\n })\n\n onMounted(() => {\n registerEventListener()\n // add tabindex then wrapper can be focusable via Javascript\n // focus wrapper so arrow key can't cause inner scroll behavior underneath\n wrapper.value?.focus?.()\n })\n\n return {\n index,\n wrapper,\n img,\n isSingle,\n isFirst,\n isLast,\n currentImg,\n imgStyle,\n mode,\n handleActions,\n prev,\n next,\n hide,\n toggleMode,\n handleImgLoad,\n handleImgError,\n handleMouseDown,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_createElementVNode","_createCommentVNode","_createVNode","_createElementBlock","_renderSlot"],"mappings":";;qBAoCW,OAAM;qBACJ,OAAM;6DAON,OAAM;6DAIN,OAAM;qBAUR,OAAM;;;;;;;;;;;sBAzDfA,0BAAY,MAAK;qBACf;MAAAC;QACE,KAAI;AAAA,QACH,UAAU;AAAA,QACX,OAAM;AAAA,QACL,gCAAS;;QAEVA;UACE,OAAM;AAAA,UACL,6DAAY,yBAAoB;;QAGnCC;QACAD;UAAM,OAAM;AAAA,UAA+C,gDAAO;;UAChEE;6BAAS;cAAAA,YAAS;AAAA;AAAA;;;QAGpBD;SACiB,8BAAjBE;UACEH;YACE,uBAAM,gEACoB,iBAAY;YACrC,gDAAO;;YAERE;+BAAS;gBAAAA,YAAc;AAAA;AAAA;;;UAEzBF;YACE,uBAAM,gEACoB,iBAAY;YACrC,gDAAO;;YAERE;+BAAS;gBAAAA,YAAe;AAAA;AAAA;;;;QAG5BD;QACAD,0BAAA;UACEA,0BAAA;YACEE;cAAU,+CAAO;;+BACf;gBAAAA;;;;YAEFA;cAAU,+CAAO;;+BACf;gBAAAA;;;;YAEF;AAAA,YACAA,kCAAU,SAAO;+BACf;8BAAAH,oCAAgB,UAAK;AAAA;AAAA;;YAEvB;AAAA,YACAG;cAAU,+CAAO;;+BACf;gBAAAA;;;;YAEFA;cAAU,+CAAO;;+BACf;gBAAAA;;;;;;QAIND;QACAD,0BAAA;4BACEG,8CACqB,eAAX,KAAK;gDADfA;cAGE,KAAI;AAAA,cACH,KAAK;AAAA,cACL,KAAK;AAAA,cACL,sBAAO;cACR,OAAM;AAAA,cACL,+CAAM;cACN,gDAAO;cACP,sDAAW;;sBARJ,MAAM;;;;QAWlBC;;;;;;;;;"}
@@ -65,7 +65,7 @@ export { ElTreeV2 } from './tree-v2/index.mjs';
65
65
  export { ElUpload } from './upload/index.mjs';
66
66
  import './virtual-list/index.mjs';
67
67
  export { ElInfiniteScroll } from './infinite-scroll/index.mjs';
68
- export { default as ElLoading, ElLoadingDirective, ElLoadingService } from './loading/index.mjs';
68
+ export { ElLoading, ElLoadingDirective, ElLoadingService } from './loading/index.mjs';
69
69
  export { ElMessage } from './message/index.mjs';
70
70
  export { ElMessageBox } from './message-box/index.mjs';
71
71
  export { ElNotification } from './notification/index.mjs';
@@ -78,6 +78,7 @@ export { badgeProps } from './badge/src/badge.mjs';
78
78
  export { breadcrumbProps } from './breadcrumb/src/breadcrumb.mjs';
79
79
  export { breadcrumbItemProps } from './breadcrumb/src/breadcrumb-item.mjs';
80
80
  export { buttonEmits, buttonNativeType, buttonProps, buttonSize, buttonType } from './button/src/button.mjs';
81
+ export { calendarEmits, calendarProps } from './calendar/src/calendar.mjs';
81
82
  export { cardProps } from './card/src/card.mjs';
82
83
  export { CASCADER_PANEL_INJECTION_KEY, ExpandTrigger } from './cascader-panel/src/types.mjs';
83
84
  export { CommonProps, DefaultProps, useCascaderConfig } from './cascader-panel/src/config.mjs';
@@ -86,6 +87,7 @@ export { configProviderProps } from './config-provider/src/config-provider.mjs';
86
87
  export { useDialog } from './dialog/src/use-dialog.mjs';
87
88
  export { dialogEmits, dialogProps } from './dialog/src/dialog.mjs';
88
89
  export { dividerProps } from './divider/src/divider.mjs';
90
+ export { drawerEmits, drawerProps } from './drawer/src/drawer.mjs';
89
91
  export { emptyProps } from './empty/src/empty.mjs';
90
92
  export { iconProps } from './icon/src/icon.mjs';
91
93
  export { imageEmits, imageProps } from './image/src/image.mjs';
@@ -106,6 +108,7 @@ export { default as usePopper } from './popper/src/use-popper/index.mjs';
106
108
  export { default as renderPopper } from './popper/src/renderers/popper.mjs';
107
109
  export { default as renderTrigger } from './popper/src/renderers/trigger.mjs';
108
110
  export { default as renderArrow } from './popper/src/renderers/arrow.mjs';
111
+ export { progressProps } from './progress/src/progress.mjs';
109
112
  export { radioEmits, radioProps, radioPropsBase, useRadio } from './radio/src/radio.mjs';
110
113
  export { radioGroupEmits, radioGroupProps } from './radio/src/radio-group.mjs';
111
114
  export { radioButtonProps } from './radio/src/radio-button.mjs';
@@ -121,6 +124,7 @@ export { skeletonProps } from './skeleton/src/skeleton.mjs';
121
124
  export { skeletonItemProps } from './skeleton/src/skeleton-item.mjs';
122
125
  export { spaceProps } from './space/src/space.mjs';
123
126
  export { useSpace } from './space/src/use-space.mjs';
127
+ export { switchEmits, switchProps } from './switch/src/switch.mjs';
124
128
  export { tabsEmits, tabsProps } from './tabs/src/tabs.mjs';
125
129
  export { tabBar } from './tabs/src/tab-bar.mjs';
126
130
  export { tabNavProps } from './tabs/src/tab-nav.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,6 @@
1
1
  export declare const ElInput: import("../../utils/types").SFCWithInstall<import("vue").DefineComponent<{
2
+ readonly size: import("../../utils/props").BuildPropReturn<StringConstructor, "", false, "" | "small" | "large" | "medium" | "mini", never>;
3
+ readonly disabled: BooleanConstructor;
2
4
  readonly modelValue: import("../../utils/props").BuildPropReturn<import("../../utils/props").PropWrapper<string | number | null | undefined>, "", unknown, unknown, unknown>;
3
5
  readonly type: import("../../utils/props").BuildPropReturn<StringConstructor, "text", unknown, unknown, unknown>;
4
6
  readonly resize: import("../../utils/props").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
@@ -19,13 +21,11 @@ export declare const ElInput: import("../../utils/types").SFCWithInstall<import(
19
21
  readonly tabindex: import("../../utils/props").BuildPropReturn<readonly [NumberConstructor, StringConstructor], unknown, unknown, unknown, unknown>;
20
22
  readonly validateEvent: import("../../utils/props").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
21
23
  readonly inputStyle: import("../../utils/props").BuildPropReturn<import("../../utils/props").PropWrapper<import("../../utils/types").StyleValue>, () => import("../../utils/types").Mutable<{}>, unknown, unknown, unknown>;
22
- readonly size: import("../../utils/props").BuildPropReturn<StringConstructor, "", unknown, "" | "small" | "large" | "medium" | "mini", unknown>;
23
- readonly disabled: BooleanConstructor;
24
24
  }, {
25
25
  input: import("vue").Ref<HTMLInputElement | undefined>;
26
26
  textarea: import("vue").Ref<HTMLTextAreaElement | undefined>;
27
27
  attrs: import("vue").ComputedRef<Record<string, unknown>>;
28
- inputSize: import("vue").ComputedRef<any>;
28
+ inputSize: import("vue").ComputedRef<"" | import("../../utils/types").ComponentSize>;
29
29
  validateState: import("vue").ComputedRef<string>;
30
30
  validateIcon: import("vue").ComputedRef<any>;
31
31
  containerStyle: import("vue").ComputedRef<import("../../utils/types").StyleValue>;
@@ -70,6 +70,8 @@ export declare const ElInput: import("../../utils/types").SFCWithInstall<import(
70
70
  compositionupdate: (evt: CompositionEvent) => boolean;
71
71
  compositionend: (evt: CompositionEvent) => boolean;
72
72
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
73
+ readonly size?: unknown;
74
+ readonly disabled?: unknown;
73
75
  readonly modelValue?: unknown;
74
76
  readonly type?: unknown;
75
77
  readonly resize?: unknown;
@@ -87,11 +89,9 @@ export declare const ElInput: import("../../utils/types").SFCWithInstall<import(
87
89
  readonly tabindex?: unknown;
88
90
  readonly validateEvent?: unknown;
89
91
  readonly inputStyle?: unknown;
90
- readonly size?: unknown;
91
- readonly disabled?: unknown;
92
92
  } & {
93
93
  type: string;
94
- size: import("../../utils/props").BuildPropType<StringConstructor, "" | "small" | "large" | "medium" | "mini", unknown>;
94
+ size: import("../../utils/props").BuildPropType<StringConstructor, "" | "small" | "large" | "medium" | "mini", never>;
95
95
  disabled: boolean;
96
96
  modelValue: import("../../utils/props").BuildPropType<import("../../utils/props").PropWrapper<string | number | null | undefined>, unknown, unknown>;
97
97
  form: string;
@@ -109,13 +109,12 @@ export declare const ElInput: import("../../utils/types").SFCWithInstall<import(
109
109
  validateEvent: import("../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
110
110
  inputStyle: import("../../utils/types").StyleValue;
111
111
  } & {
112
- placeholder?: string | undefined;
113
112
  label?: string | undefined;
114
113
  resize?: import("../../utils/props").BuildPropType<StringConstructor, "none" | "both" | "horizontal" | "vertical", unknown> | undefined;
114
+ placeholder?: string | undefined;
115
115
  tabindex?: import("../../utils/props").BuildPropType<readonly [NumberConstructor, StringConstructor], unknown, unknown> | undefined;
116
116
  }> & {
117
117
  onChange?: ((value: string) => any) | undefined;
118
- onClear?: (() => any) | undefined;
119
118
  onInput?: ((value: string) => any) | undefined;
120
119
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
121
120
  onBlur?: ((evt: FocusEvent) => any) | undefined;
@@ -126,10 +125,10 @@ export declare const ElInput: import("../../utils/types").SFCWithInstall<import(
126
125
  onKeydown?: ((evt: KeyboardEvent) => any) | undefined;
127
126
  onMouseenter?: ((evt: MouseEvent) => any) | undefined;
128
127
  onMouseleave?: ((evt: MouseEvent) => any) | undefined;
128
+ onClear?: (() => any) | undefined;
129
129
  }, {
130
- placeholder: string;
131
130
  type: string;
132
- size: import("../../utils/props").BuildPropType<StringConstructor, "" | "small" | "large" | "medium" | "mini", unknown>;
131
+ size: import("../../utils/props").BuildPropType<StringConstructor, "" | "small" | "large" | "medium" | "mini", never>;
133
132
  disabled: boolean;
134
133
  modelValue: import("../../utils/props").BuildPropType<import("../../utils/props").PropWrapper<string | number | null | undefined>, unknown, unknown>;
135
134
  label: string;
@@ -140,6 +139,7 @@ export declare const ElInput: import("../../utils/types").SFCWithInstall<import(
140
139
  maxRows?: number | undefined;
141
140
  };
142
141
  autocomplete: string;
142
+ placeholder: string;
143
143
  readonly: import("../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
144
144
  clearable: import("../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
145
145
  showPassword: import("../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
@@ -5,6 +5,8 @@ declare type AutoSize = {
5
5
  maxRows?: number;
6
6
  } | boolean;
7
7
  export declare const inputProps: {
8
+ readonly size: import("element-plus/es/utils/props").BuildPropReturn<StringConstructor, "", false, "" | "small" | "large" | "medium" | "mini", never>;
9
+ readonly disabled: BooleanConstructor;
8
10
  readonly modelValue: import("element-plus/es/utils/props").BuildPropReturn<import("element-plus/es/utils/props").PropWrapper<string | number | null | undefined>, "", unknown, unknown, unknown>;
9
11
  readonly type: import("element-plus/es/utils/props").BuildPropReturn<StringConstructor, "text", unknown, unknown, unknown>;
10
12
  readonly resize: import("element-plus/es/utils/props").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
@@ -22,8 +24,6 @@ export declare const inputProps: {
22
24
  readonly tabindex: import("element-plus/es/utils/props").BuildPropReturn<readonly [NumberConstructor, StringConstructor], unknown, unknown, unknown, unknown>;
23
25
  readonly validateEvent: import("element-plus/es/utils/props").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
24
26
  readonly inputStyle: import("element-plus/es/utils/props").BuildPropReturn<import("element-plus/es/utils/props").PropWrapper<StyleValue>, () => import("element-plus/es/utils/types").Mutable<{}>, unknown, unknown, unknown>;
25
- readonly size: import("element-plus/es/utils/props").BuildPropReturn<StringConstructor, "", unknown, "" | "small" | "large" | "medium" | "mini", unknown>;
26
- readonly disabled: BooleanConstructor;
27
27
  };
28
28
  export declare type InputProps = ExtractPropTypes<typeof inputProps>;
29
29
  export declare const inputEmits: {
@@ -1,11 +1,12 @@
1
1
  import { isString } from '@vue/shared';
2
- import '../../../hooks/index.mjs';
3
2
  import { buildProps, definePropType, mutable } from '../../../utils/props.mjs';
4
3
  import { UPDATE_MODEL_EVENT } from '../../../utils/constants.mjs';
5
- import { useFormItemProps } from '../../../hooks/use-form-item/index.mjs';
4
+ import '../../../hooks/index.mjs';
5
+ import { useSizeProp } from '../../../hooks/use-common-props/index.mjs';
6
6
 
7
7
  const inputProps = buildProps({
8
- ...useFormItemProps,
8
+ size: useSizeProp,
9
+ disabled: Boolean,
9
10
  modelValue: {
10
11
  type: definePropType(void 0),
11
12
  default: ""
@@ -1 +1 @@
1
- {"version":3,"file":"input.mjs","sources":["../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import { isString } from '@vue/shared'\nimport { useFormItemProps } from '@element-plus/hooks'\nimport { buildProps, definePropType, mutable } from '@element-plus/utils/props'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport type { StyleValue } from '@element-plus/utils/types'\nimport type { ExtractPropTypes, Component } from 'vue'\n\ntype AutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const inputProps = buildProps({\n ...useFormItemProps,\n modelValue: {\n type: definePropType<string | number | null | undefined>(undefined),\n default: '',\n },\n type: {\n type: String,\n default: 'text',\n },\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n autosize: {\n type: definePropType<AutoSize>([Boolean, Object]),\n default: false,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n placeholder: {\n type: String,\n },\n form: {\n type: String,\n default: '',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n clearable: {\n type: Boolean,\n default: false,\n },\n showPassword: {\n type: Boolean,\n default: false,\n },\n showWordLimit: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n prefixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n label: {\n type: String,\n },\n tabindex: {\n type: [Number, String],\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n inputStyle: {\n type: definePropType<StyleValue>([Object, Array, String]),\n default: () => mutable({} as const),\n },\n} as const)\nexport type InputProps = ExtractPropTypes<typeof inputProps>\n\nexport const inputEmits = {\n [UPDATE_MODEL_EVENT]: (value: string) => isString(value),\n input: (value: string) => isString(value),\n change: (value: string) => isString(value),\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n mouseleave: (evt: MouseEvent) => evt instanceof MouseEvent,\n mouseenter: (evt: MouseEvent) => evt instanceof MouseEvent,\n keydown: (evt: KeyboardEvent) => evt instanceof KeyboardEvent,\n compositionstart: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionupdate: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionend: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n}\nexport type InputEmits = typeof inputEmits\n"],"names":[],"mappings":";;;;;;MASa,aAAa,WAAW;AAAA,KAChC;AAAA,EACH,YAAY;AAAA,IACV,MAAM,eAAmD;AAAA,IACzD,SAAS;AAAA;AAAA,EAEX,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ,CAAC,QAAQ,QAAQ,cAAc;AAAA;AAAA,EAEzC,UAAU;AAAA,IACR,MAAM,eAAyB,CAAC,SAAS;AAAA,IACzC,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,aAAa;AAAA,IACX,MAAM;AAAA;AAAA,EAER,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,eAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,eAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM;AAAA;AAAA,EAER,UAAU;AAAA,IACR,MAAM,CAAC,QAAQ;AAAA;AAAA,EAEjB,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,eAA2B,CAAC,QAAQ,OAAO;AAAA,IACjD,SAAS,MAAM,QAAQ;AAAA;AAAA;MAKd,aAAa;AAAA,GACvB,qBAAqB,CAAC,UAAkB,SAAS;AAAA,EAClD,OAAO,CAAC,UAAkB,SAAS;AAAA,EACnC,QAAQ,CAAC,UAAkB,SAAS;AAAA,EACpC,OAAO,CAAC,QAAoB,eAAe;AAAA,EAC3C,MAAM,CAAC,QAAoB,eAAe;AAAA,EAC1C,OAAO,MAAM;AAAA,EACb,YAAY,CAAC,QAAoB,eAAe;AAAA,EAChD,YAAY,CAAC,QAAoB,eAAe;AAAA,EAChD,SAAS,CAAC,QAAuB,eAAe;AAAA,EAChD,kBAAkB,CAAC,QAA0B,eAAe;AAAA,EAC5D,mBAAmB,CAAC,QAA0B,eAAe;AAAA,EAC7D,gBAAgB,CAAC,QAA0B,eAAe;AAAA;;;;"}
1
+ {"version":3,"file":"input.mjs","sources":["../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import { isString } from '@vue/shared'\nimport { buildProps, definePropType, mutable } from '@element-plus/utils/props'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport { useSizeProp } from '@element-plus/hooks'\nimport type { StyleValue } from '@element-plus/utils/types'\nimport type { ExtractPropTypes, Component } from 'vue'\n\ntype AutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const inputProps = buildProps({\n size: useSizeProp,\n disabled: Boolean,\n modelValue: {\n type: definePropType<string | number | null | undefined>(undefined),\n default: '',\n },\n type: {\n type: String,\n default: 'text',\n },\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n autosize: {\n type: definePropType<AutoSize>([Boolean, Object]),\n default: false,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n placeholder: {\n type: String,\n },\n form: {\n type: String,\n default: '',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n clearable: {\n type: Boolean,\n default: false,\n },\n showPassword: {\n type: Boolean,\n default: false,\n },\n showWordLimit: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n prefixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n label: {\n type: String,\n },\n tabindex: {\n type: [Number, String],\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n inputStyle: {\n type: definePropType<StyleValue>([Object, Array, String]),\n default: () => mutable({} as const),\n },\n} as const)\nexport type InputProps = ExtractPropTypes<typeof inputProps>\n\nexport const inputEmits = {\n [UPDATE_MODEL_EVENT]: (value: string) => isString(value),\n input: (value: string) => isString(value),\n change: (value: string) => isString(value),\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n mouseleave: (evt: MouseEvent) => evt instanceof MouseEvent,\n mouseenter: (evt: MouseEvent) => evt instanceof MouseEvent,\n keydown: (evt: KeyboardEvent) => evt instanceof KeyboardEvent,\n compositionstart: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionupdate: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionend: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n}\nexport type InputEmits = typeof inputEmits\n"],"names":[],"mappings":";;;;;;MASa,aAAa,WAAW;AAAA,EACnC,MAAM;AAAA,EACN,UAAU;AAAA,EACV,YAAY;AAAA,IACV,MAAM,eAAmD;AAAA,IACzD,SAAS;AAAA;AAAA,EAEX,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ,CAAC,QAAQ,QAAQ,cAAc;AAAA;AAAA,EAEzC,UAAU;AAAA,IACR,MAAM,eAAyB,CAAC,SAAS;AAAA,IACzC,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,aAAa;AAAA,IACX,MAAM;AAAA;AAAA,EAER,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,eAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,eAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM;AAAA;AAAA,EAER,UAAU;AAAA,IACR,MAAM,CAAC,QAAQ;AAAA;AAAA,EAEjB,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,eAA2B,CAAC,QAAQ,OAAO;AAAA,IACjD,SAAS,MAAM,QAAQ;AAAA;AAAA;MAKd,aAAa;AAAA,GACvB,qBAAqB,CAAC,UAAkB,SAAS;AAAA,EAClD,OAAO,CAAC,UAAkB,SAAS;AAAA,EACnC,QAAQ,CAAC,UAAkB,SAAS;AAAA,EACpC,OAAO,CAAC,QAAoB,eAAe;AAAA,EAC3C,MAAM,CAAC,QAAoB,eAAe;AAAA,EAC1C,OAAO,MAAM;AAAA,EACb,YAAY,CAAC,QAAoB,eAAe;AAAA,EAChD,YAAY,CAAC,QAAoB,eAAe;AAAA,EAChD,SAAS,CAAC,QAAuB,eAAe;AAAA,EAChD,kBAAkB,CAAC,QAA0B,eAAe;AAAA,EAC5D,mBAAmB,CAAC,QAA0B,eAAe;AAAA,EAC7D,gBAAgB,CAAC,QAA0B,eAAe;AAAA;;;;"}
@@ -1,5 +1,7 @@
1
1
  import type { StyleValue } from 'element-plus/es/utils/types';
2
2
  declare const _default: import("vue").DefineComponent<{
3
+ readonly size: import("../../../utils/props").BuildPropReturn<StringConstructor, "", false, "" | "small" | "large" | "medium" | "mini", never>;
4
+ readonly disabled: BooleanConstructor;
3
5
  readonly modelValue: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string | number | null | undefined>, "", unknown, unknown, unknown>;
4
6
  readonly type: import("../../../utils/props").BuildPropReturn<StringConstructor, "text", unknown, unknown, unknown>;
5
7
  readonly resize: import("../../../utils/props").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
@@ -20,13 +22,11 @@ declare const _default: import("vue").DefineComponent<{
20
22
  readonly tabindex: import("../../../utils/props").BuildPropReturn<readonly [NumberConstructor, StringConstructor], unknown, unknown, unknown, unknown>;
21
23
  readonly validateEvent: import("../../../utils/props").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
22
24
  readonly inputStyle: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<StyleValue>, () => import("element-plus/es/utils/types").Mutable<{}>, unknown, unknown, unknown>;
23
- readonly size: import("../../../utils/props").BuildPropReturn<StringConstructor, "", unknown, "" | "small" | "large" | "medium" | "mini", unknown>;
24
- readonly disabled: BooleanConstructor;
25
25
  }, {
26
26
  input: import("vue").Ref<HTMLInputElement | undefined>;
27
27
  textarea: import("vue").Ref<HTMLTextAreaElement | undefined>;
28
28
  attrs: import("vue").ComputedRef<Record<string, unknown>>;
29
- inputSize: import("vue").ComputedRef<any>;
29
+ inputSize: import("vue").ComputedRef<"" | import("element-plus/es/utils/types").ComponentSize>;
30
30
  validateState: import("vue").ComputedRef<string>;
31
31
  validateIcon: import("vue").ComputedRef<any>;
32
32
  containerStyle: import("vue").ComputedRef<StyleValue>;
@@ -71,6 +71,8 @@ declare const _default: import("vue").DefineComponent<{
71
71
  compositionupdate: (evt: CompositionEvent) => boolean;
72
72
  compositionend: (evt: CompositionEvent) => boolean;
73
73
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
74
+ readonly size?: unknown;
75
+ readonly disabled?: unknown;
74
76
  readonly modelValue?: unknown;
75
77
  readonly type?: unknown;
76
78
  readonly resize?: unknown;
@@ -88,11 +90,9 @@ declare const _default: import("vue").DefineComponent<{
88
90
  readonly tabindex?: unknown;
89
91
  readonly validateEvent?: unknown;
90
92
  readonly inputStyle?: unknown;
91
- readonly size?: unknown;
92
- readonly disabled?: unknown;
93
93
  } & {
94
94
  type: string;
95
- size: import("../../../utils/props").BuildPropType<StringConstructor, "" | "small" | "large" | "medium" | "mini", unknown>;
95
+ size: import("../../../utils/props").BuildPropType<StringConstructor, "" | "small" | "large" | "medium" | "mini", never>;
96
96
  disabled: boolean;
97
97
  modelValue: import("../../../utils/props").BuildPropType<import("../../../utils/props").PropWrapper<string | number | null | undefined>, unknown, unknown>;
98
98
  form: string;
@@ -110,13 +110,12 @@ declare const _default: import("vue").DefineComponent<{
110
110
  validateEvent: import("../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
111
111
  inputStyle: StyleValue;
112
112
  } & {
113
- placeholder?: string | undefined;
114
113
  label?: string | undefined;
115
114
  resize?: import("../../../utils/props").BuildPropType<StringConstructor, "none" | "both" | "horizontal" | "vertical", unknown> | undefined;
115
+ placeholder?: string | undefined;
116
116
  tabindex?: import("../../../utils/props").BuildPropType<readonly [NumberConstructor, StringConstructor], unknown, unknown> | undefined;
117
117
  }> & {
118
118
  onChange?: ((value: string) => any) | undefined;
119
- onClear?: (() => any) | undefined;
120
119
  onInput?: ((value: string) => any) | undefined;
121
120
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
122
121
  onBlur?: ((evt: FocusEvent) => any) | undefined;
@@ -127,10 +126,10 @@ declare const _default: import("vue").DefineComponent<{
127
126
  onKeydown?: ((evt: KeyboardEvent) => any) | undefined;
128
127
  onMouseenter?: ((evt: MouseEvent) => any) | undefined;
129
128
  onMouseleave?: ((evt: MouseEvent) => any) | undefined;
129
+ onClear?: (() => any) | undefined;
130
130
  }, {
131
- placeholder: string;
132
131
  type: string;
133
- size: import("../../../utils/props").BuildPropType<StringConstructor, "" | "small" | "large" | "medium" | "mini", unknown>;
132
+ size: import("../../../utils/props").BuildPropType<StringConstructor, "" | "small" | "large" | "medium" | "mini", never>;
134
133
  disabled: boolean;
135
134
  modelValue: import("../../../utils/props").BuildPropType<import("../../../utils/props").PropWrapper<string | number | null | undefined>, unknown, unknown>;
136
135
  label: string;
@@ -141,6 +140,7 @@ declare const _default: import("vue").DefineComponent<{
141
140
  maxRows?: number | undefined;
142
141
  };
143
142
  autocomplete: string;
143
+ placeholder: string;
144
144
  readonly: import("../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
145
145
  clearable: import("../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
146
146
  showPassword: import("../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
@@ -1,8 +1,7 @@
1
- import { defineComponent, getCurrentInstance, inject, ref, shallowRef, computed, nextTick, watch, onMounted, onUpdated } from 'vue';
1
+ import { defineComponent, getCurrentInstance, ref, shallowRef, computed, nextTick, watch, onMounted, onUpdated } from 'vue';
2
2
  import { ElIcon } from '../../icon/index.mjs';
3
- import { CircleClose, View } from '@element-plus/icons';
3
+ import { CircleClose, View } from '@element-plus/icons-vue';
4
4
  import { ValidateComponentsMap } from '../../../utils/icon.mjs';
5
- import '../../../tokens/index.mjs';
6
5
  import '../../../hooks/index.mjs';
7
6
  import { UPDATE_MODEL_EVENT } from '../../../utils/constants.mjs';
8
7
  import '../../../utils/util.mjs';
@@ -11,8 +10,8 @@ import { isKorean } from '../../../utils/isDef.mjs';
11
10
  import { calcTextareaHeight } from './calc-textarea-height.mjs';
12
11
  import { inputProps, inputEmits } from './input.mjs';
13
12
  import { useAttrs } from '../../../hooks/use-attrs/index.mjs';
14
- import { elFormKey, elFormItemKey } from '../../../tokens/form.mjs';
15
13
  import { useFormItem } from '../../../hooks/use-form-item/index.mjs';
14
+ import { useSize, useDisabled } from '../../../hooks/use-common-props/index.mjs';
16
15
  import { isObject } from '@vue/shared';
17
16
 
18
17
  const PENDANT_MAP = {
@@ -28,9 +27,9 @@ var script = defineComponent({
28
27
  setup(props, { slots, emit, attrs: rawAttrs }) {
29
28
  const instance = getCurrentInstance();
30
29
  const attrs = useAttrs();
31
- const elForm = inject(elFormKey, void 0);
32
- const elFormItem = inject(elFormItemKey, void 0);
33
- const { size: inputSize, disabled: inputDisabled } = useFormItem({});
30
+ const { form, formItem } = useFormItem();
31
+ const inputSize = useSize();
32
+ const inputDisabled = useDisabled();
34
33
  const input = ref();
35
34
  const textarea = ref();
36
35
  const focused = ref(false);
@@ -41,9 +40,9 @@ var script = defineComponent({
41
40
  const inputOrTextarea = computed(() => input.value || textarea.value);
42
41
  const needStatusIcon = computed(() => {
43
42
  var _a;
44
- return (_a = elForm == null ? void 0 : elForm.statusIcon) != null ? _a : false;
43
+ return (_a = form == null ? void 0 : form.statusIcon) != null ? _a : false;
45
44
  });
46
- const validateState = computed(() => (elFormItem == null ? void 0 : elFormItem.validateState) || "");
45
+ const validateState = computed(() => (formItem == null ? void 0 : formItem.validateState) || "");
47
46
  const validateIcon = computed(() => ValidateComponentsMap[validateState.value]);
48
47
  const containerStyle = computed(() => rawAttrs.style);
49
48
  const computedTextareaStyle = computed(() => [
@@ -130,7 +129,7 @@ var script = defineComponent({
130
129
  focused.value = false;
131
130
  emit("blur", event);
132
131
  if (props.validateEvent) {
133
- (_a = elFormItem == null ? void 0 : elFormItem.validate) == null ? void 0 : _a.call(elFormItem, "blur");
132
+ (_a = formItem == null ? void 0 : formItem.validate) == null ? void 0 : _a.call(formItem, "blur");
134
133
  }
135
134
  };
136
135
  const select = () => {
@@ -170,7 +169,7 @@ var script = defineComponent({
170
169
  var _a;
171
170
  nextTick(resizeTextarea);
172
171
  if (props.validateEvent) {
173
- (_a = elFormItem == null ? void 0 : elFormItem.validate) == null ? void 0 : _a.call(elFormItem, "change");
172
+ (_a = formItem == null ? void 0 : formItem.validate) == null ? void 0 : _a.call(formItem, "change");
174
173
  }
175
174
  });
176
175
  watch(nativeInputValue, () => setNativeInputValue());
@@ -1 +1 @@
1
- {"version":3,"file":"input.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n :class=\"[\n type === 'textarea' ? 'el-textarea' : 'el-input',\n inputSize ? 'el-input--' + inputSize : '',\n {\n 'is-disabled': inputDisabled,\n 'is-exceed': inputExceed,\n 'el-input-group': $slots.prepend || $slots.append,\n 'el-input-group--append': $slots.append,\n 'el-input-group--prepend': $slots.prepend,\n 'el-input--prefix': $slots.prefix || prefixIcon,\n 'el-input--suffix':\n $slots.suffix || suffixIcon || clearable || showPassword,\n 'el-input--suffix--password-clear': clearable && showPassword,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" class=\"el-input-group__prepend\">\n <slot name=\"prepend\" />\n </div>\n\n <input\n ref=\"input\"\n class=\"el-input__inner\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" class=\"el-input__prefix\">\n <span class=\"el-input__prefix-inner\">\n <slot name=\"prefix\"></slot>\n <el-icon v-if=\"prefixIcon\" class=\"el-input__icon\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </span>\n </span>\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" class=\"el-input__suffix\">\n <span class=\"el-input__suffix-inner\">\n <template v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\">\n <slot name=\"suffix\"></slot>\n <el-icon v-if=\"suffixIcon\" class=\"el-input__icon\">\n <component :is=\"suffixIcon\" />\n </el-icon>\n </template>\n <el-icon\n v-if=\"showClear\"\n class=\"el-input__icon el-input__clear\"\n @mousedown.prevent\n @click=\"clear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-if=\"showPwdVisible\"\n class=\"el-input__icon el-input__clear\"\n @click=\"handlePasswordVisible\"\n >\n <icon-view />\n </el-icon>\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n <span class=\"el-input__count-inner\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n </span>\n <el-icon\n v-if=\"validateState && validateIcon\"\n class=\"el-input__icon el-input__validateIcon\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </span>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" class=\"el-input-group__append\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n ref=\"textarea\"\n class=\"el-textarea__inner\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"computedTextareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n inject,\n computed,\n watch,\n nextTick,\n getCurrentInstance,\n ref,\n shallowRef,\n onMounted,\n onUpdated,\n} from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CircleClose, View as IconView } from '@element-plus/icons'\nimport { ValidateComponentsMap } from '@element-plus/utils/icon'\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport { useAttrs, useFormItem } from '@element-plus/hooks'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport { isObject } from '@element-plus/utils/util'\nimport isServer from '@element-plus/utils/isServer'\nimport { isKorean } from '@element-plus/utils/isDef'\nimport { calcTextareaHeight } from './calc-textarea-height'\nimport { inputProps, inputEmits } from './input'\n\nimport type { StyleValue } from '@element-plus/utils/types'\n\ntype TargetElement = HTMLInputElement | HTMLTextAreaElement\n\nconst PENDANT_MAP = {\n suffix: 'append',\n prefix: 'prepend',\n} as const\n\nexport default defineComponent({\n name: 'ElInput',\n\n components: { ElIcon, CircleClose, IconView },\n\n inheritAttrs: false,\n\n props: inputProps,\n emits: inputEmits,\n\n setup(props, { slots, emit, attrs: rawAttrs }) {\n const instance = getCurrentInstance()!\n const attrs = useAttrs()\n\n const elForm = inject(elFormKey, undefined)\n const elFormItem = inject(elFormItemKey, undefined)\n\n const { size: inputSize, disabled: inputDisabled } = useFormItem({})\n\n const input = ref<HTMLInputElement>()\n const textarea = ref<HTMLTextAreaElement>()\n const focused = ref(false)\n const hovering = ref(false)\n const isComposing = ref(false)\n const passwordVisible = ref(false)\n const _textareaCalcStyle = shallowRef(props.inputStyle)\n\n const inputOrTextarea = computed(() => input.value || textarea.value)\n\n const needStatusIcon = computed(() => elForm?.statusIcon ?? false)\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(\n () => ValidateComponentsMap[validateState.value]\n )\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n const computedTextareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n _textareaCalcStyle.value,\n { resize: props.resize },\n ])\n const nativeInputValue = computed(() =>\n props.modelValue === null || props.modelValue === undefined\n ? ''\n : String(props.modelValue)\n )\n const showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n )\n const showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n (!!nativeInputValue.value || focused.value)\n )\n const isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!attrs.value.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n )\n const textLength = computed(() => Array.from(nativeInputValue.value).length)\n const inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value &&\n textLength.value > Number(attrs.value.maxlength)\n )\n\n const resizeTextarea = () => {\n const { type, autosize } = props\n\n if (isServer || type !== 'textarea') return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n _textareaCalcStyle.value = {\n ...calcTextareaHeight(textarea.value!, minRows, maxRows),\n }\n } else {\n _textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value!).minHeight,\n }\n }\n }\n\n const setNativeInputValue = () => {\n const input = inputOrTextarea.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n }\n\n const calcIconOffset = (place: 'prefix' | 'suffix') => {\n const { el } = instance.vnode\n if (!el) return\n const elList: HTMLSpanElement[] = Array.from(\n el.querySelectorAll(`.el-input__${place}`)\n )\n const target = elList.find((item) => item.parentNode === el)\n\n if (!target) return\n\n const pendant = PENDANT_MAP[place]\n\n if (slots[pendant]) {\n target.style.transform = `translateX(${place === 'suffix' ? '-' : ''}${\n el.querySelector(`.el-input-group__${pendant}`).offsetWidth\n }px)`\n } else {\n target.removeAttribute('style')\n }\n }\n\n const updateIconOffset = () => {\n calcIconOffset('prefix')\n calcIconOffset('suffix')\n }\n\n const handleInput = (event: Event) => {\n const { value } = event.target as TargetElement\n\n // should not emit input during composition\n // see: https://github.com/ElemeFE/element/issues/10516\n if (isComposing.value) return\n\n // hack for https://github.com/ElemeFE/element/issues/8548\n // should remove the following line when we don't support IE\n if (value === nativeInputValue.value) return\n\n emit(UPDATE_MODEL_EVENT, value)\n emit('input', value)\n\n // ensure native input value is controlled\n // see: https://github.com/ElemeFE/element/issues/12850\n nextTick(setNativeInputValue)\n }\n\n const handleChange = (event: Event) => {\n emit('change', (event.target as TargetElement).value)\n }\n\n const focus = () => {\n // see: https://github.com/ElemeFE/element/issues/18573\n nextTick(() => {\n inputOrTextarea.value?.focus()\n })\n }\n\n const blur = () => {\n inputOrTextarea.value?.blur()\n }\n\n const handleFocus = (event: FocusEvent) => {\n focused.value = true\n emit('focus', event)\n }\n\n const handleBlur = (event: FocusEvent) => {\n focused.value = false\n emit('blur', event)\n if (props.validateEvent) {\n elFormItem?.validate?.('blur')\n }\n }\n\n const select = () => {\n inputOrTextarea.value?.select()\n }\n\n const handleCompositionStart = (event: CompositionEvent) => {\n emit('compositionstart', event)\n isComposing.value = true\n }\n\n const handleCompositionUpdate = (event: CompositionEvent) => {\n emit('compositionupdate', event)\n const text = (event.target as HTMLInputElement)?.value\n const lastCharacter = text[text.length - 1] || ''\n isComposing.value = !isKorean(lastCharacter)\n }\n\n const handleCompositionEnd = (event: CompositionEvent) => {\n emit('compositionend', event)\n if (isComposing.value) {\n isComposing.value = false\n handleInput(event)\n }\n }\n\n const clear = () => {\n emit(UPDATE_MODEL_EVENT, '')\n emit('change', '')\n emit('clear')\n emit('input', '')\n }\n\n const handlePasswordVisible = () => {\n passwordVisible.value = !passwordVisible.value\n focus()\n }\n\n const suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n )\n\n watch(\n () => props.modelValue,\n () => {\n nextTick(resizeTextarea)\n if (props.validateEvent) {\n elFormItem?.validate?.('change')\n }\n }\n )\n\n // native input value is set explicitly\n // do not use v-model / :value in template\n // see: https://github.com/ElemeFE/element/issues/14521\n watch(nativeInputValue, () => setNativeInputValue())\n\n // when change between <input> and <textarea>,\n // update DOM dependent value and styles\n // https://github.com/ElemeFE/element/issues/14857\n watch(\n () => props.type,\n () => {\n nextTick(() => {\n setNativeInputValue()\n resizeTextarea()\n updateIconOffset()\n })\n }\n )\n\n onMounted(() => {\n setNativeInputValue()\n updateIconOffset()\n nextTick(resizeTextarea)\n })\n\n onUpdated(() => {\n nextTick(updateIconOffset)\n })\n\n const onMouseLeave = (evt: MouseEvent) => {\n hovering.value = false\n emit('mouseleave', evt)\n }\n\n const onMouseEnter = (evt: MouseEvent) => {\n hovering.value = true\n emit('mouseenter', evt)\n }\n\n const handleKeydown = (evt: KeyboardEvent) => {\n emit('keydown', evt)\n }\n\n return {\n input,\n textarea,\n attrs,\n inputSize,\n validateState,\n validateIcon,\n containerStyle,\n computedTextareaStyle,\n inputDisabled,\n showClear,\n showPwdVisible,\n isWordLimitVisible,\n textLength,\n hovering,\n inputExceed,\n passwordVisible,\n inputOrTextarea,\n suffixVisible,\n\n resizeTextarea,\n handleInput,\n handleChange,\n handleFocus,\n handleBlur,\n handleCompositionStart,\n handleCompositionUpdate,\n handleCompositionEnd,\n handlePasswordVisible,\n clear,\n select,\n focus,\n blur,\n onMouseLeave,\n onMouseEnter,\n handleKeydown,\n }\n },\n})\n</script>\n"],"names":["IconView"],"mappings":";;;;;;;;;;;;;;;;;AAoKA,MAAM,cAAc;AAAA,EAClB,QAAQ;AAAA,EACR,QAAQ;AAAA;AAGV,aAAe,gBAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY,EAAE,QAAQ,uBAAaA;AAAA,EAEnC,cAAc;AAAA,EAEd,OAAO;AAAA,EACP,OAAO;AAAA,EAEP,MAAM,OAAO,EAAE,OAAO,MAAM,OAAO,YAAY;AAC7C,UAAM,WAAW;AACjB,UAAM,QAAQ;AAEd,UAAM,SAAS,OAAO,WAAW;AACjC,UAAM,aAAa,OAAO,eAAe;AAEzC,UAAM,EAAE,MAAM,WAAW,UAAU,kBAAkB,YAAY;AAEjE,UAAM,QAAQ;AACd,UAAM,WAAW;AACjB,UAAM,UAAU,IAAI;AACpB,UAAM,WAAW,IAAI;AACrB,UAAM,cAAc,IAAI;AACxB,UAAM,kBAAkB,IAAI;AAC5B,UAAM,qBAAqB,WAAW,MAAM;AAE5C,UAAM,kBAAkB,SAAS,MAAM,MAAM,SAAS,SAAS;AAE/D,UAAM,iBAAiB,SAAS,MAAG;;AAAG,oDAAQ,eAAR,YAAsB;AAAA;AAC5D,UAAM,gBAAgB,SAAS,MAAM,0CAAY,kBAAiB;AAClE,UAAM,eAAe,SACnB,MAAM,sBAAsB,cAAc;AAE5C,UAAM,iBAAiB,SAAS,MAAM,SAAS;AAC/C,UAAM,wBAAwB,SAAqB,MAAM;AAAA,MACvD,MAAM;AAAA,MACN,mBAAmB;AAAA,MACnB,EAAE,QAAQ,MAAM;AAAA;AAElB,UAAM,mBAAmB,SAAS,MAChC,MAAM,eAAe,QAAQ,MAAM,eAAe,SAC9C,KACA,OAAO,MAAM;AAEnB,UAAM,YAAY,SAChB,MACE,MAAM,aACN,CAAC,cAAc,SACf,CAAC,MAAM,YACP,CAAC,CAAC,iBAAiB,kBACV,SAAS,SAAS;AAE/B,UAAM,iBAAiB,SACrB,MACE,MAAM,gBACN,CAAC,cAAc,SACf,CAAC,MAAM,cACL,CAAC,iBAAiB,SAAS,QAAQ;AAEzC,UAAM,qBAAqB,SACzB,MACE,MAAM,iBACN,CAAC,CAAC,MAAM,MAAM,oBACP,SAAS,UAAU,MAAM,SAAS,eACzC,CAAC,cAAc,SACf,CAAC,MAAM,YACP,CAAC,MAAM;AAEX,UAAM,aAAa,SAAS,MAAM,MAAM,KAAK,iBAAiB,OAAO;AACrE,UAAM,cAAc,SAClB,MAEE,CAAC,CAAC,mBAAmB,SACrB,WAAW,QAAQ,OAAO,MAAM,MAAM;AAG1C,UAAM,iBAAiB,MAAM;AAC3B,YAAM,EAAE,MAAM,aAAa;AAE3B,UAAI,YAAY,SAAS;AAAY;AAErC,UAAI,UAAU;AACZ,cAAM,UAAU,SAAS,YAAY,SAAS,UAAU;AACxD,cAAM,UAAU,SAAS,YAAY,SAAS,UAAU;AACxD,2BAAmB,QAAQ;AAAA,aACtB,mBAAmB,SAAS,OAAQ,SAAS;AAAA;AAAA,aAE7C;AACL,2BAAmB,QAAQ;AAAA,UACzB,WAAW,mBAAmB,SAAS,OAAQ;AAAA;AAAA;AAAA;AAKrD,UAAM,sBAAsB,MAAM;AAChC,YAAM,SAAQ,gBAAgB;AAC9B,UAAI,CAAC,UAAS,OAAM,UAAU,iBAAiB;AAAO;AACtD,aAAM,QAAQ,iBAAiB;AAAA;AAGjC,UAAM,iBAAiB,CAAC,UAA+B;AACrD,YAAM,EAAE,OAAO,SAAS;AACxB,UAAI,CAAC;AAAI;AACT,YAAM,SAA4B,MAAM,KACtC,GAAG,iBAAiB,cAAc;AAEpC,YAAM,SAAS,OAAO,KAAK,CAAC,SAAS,KAAK,eAAe;AAEzD,UAAI,CAAC;AAAQ;AAEb,YAAM,UAAU,YAAY;AAE5B,UAAI,MAAM,UAAU;AAClB,eAAO,MAAM,YAAY,cAAc,UAAU,WAAW,MAAM,KAChE,GAAG,cAAc,oBAAoB,WAAW;AAAA,aAE7C;AACL,eAAO,gBAAgB;AAAA;AAAA;AAI3B,UAAM,mBAAmB,MAAM;AAC7B,qBAAe;AACf,qBAAe;AAAA;AAGjB,UAAM,cAAc,CAAC,UAAiB;AACpC,YAAM,EAAE,UAAU,MAAM;AAIxB,UAAI,YAAY;AAAO;AAIvB,UAAI,UAAU,iBAAiB;AAAO;AAEtC,WAAK,oBAAoB;AACzB,WAAK,SAAS;AAId,eAAS;AAAA;AAGX,UAAM,eAAe,CAAC,UAAiB;AACrC,WAAK,UAAW,MAAM,OAAyB;AAAA;AAGjD,UAAM,QAAQ,MAAM;AAElB,eAAS,MAAM;;AACb,8BAAgB,UAAhB,mBAAuB;AAAA;AAAA;AAI3B,UAAM,OAAO,MAAM;;AACjB,4BAAgB,UAAhB,mBAAuB;AAAA;AAGzB,UAAM,cAAc,CAAC,UAAsB;AACzC,cAAQ,QAAQ;AAChB,WAAK,SAAS;AAAA;AAGhB,UAAM,aAAa,CAAC,UAAsB;;AACxC,cAAQ,QAAQ;AAChB,WAAK,QAAQ;AACb,UAAI,MAAM,eAAe;AACvB,uDAAY,aAAZ,oCAAuB;AAAA;AAAA;AAI3B,UAAM,SAAS,MAAM;;AACnB,4BAAgB,UAAhB,mBAAuB;AAAA;AAGzB,UAAM,yBAAyB,CAAC,UAA4B;AAC1D,WAAK,oBAAoB;AACzB,kBAAY,QAAQ;AAAA;AAGtB,UAAM,0BAA0B,CAAC,UAA4B;;AAC3D,WAAK,qBAAqB;AAC1B,YAAM,OAAQ,YAAM,WAAN,mBAAmC;AACjD,YAAM,gBAAgB,KAAK,KAAK,SAAS,MAAM;AAC/C,kBAAY,QAAQ,CAAC,SAAS;AAAA;AAGhC,UAAM,uBAAuB,CAAC,UAA4B;AACxD,WAAK,kBAAkB;AACvB,UAAI,YAAY,OAAO;AACrB,oBAAY,QAAQ;AACpB,oBAAY;AAAA;AAAA;AAIhB,UAAM,QAAQ,MAAM;AAClB,WAAK,oBAAoB;AACzB,WAAK,UAAU;AACf,WAAK;AACL,WAAK,SAAS;AAAA;AAGhB,UAAM,wBAAwB,MAAM;AAClC,sBAAgB,QAAQ,CAAC,gBAAgB;AACzC;AAAA;AAGF,UAAM,gBAAgB,SACpB,MACE,CAAC,CAAC,MAAM,UACR,CAAC,CAAC,MAAM,cACR,UAAU,SACV,MAAM,gBACN,mBAAmB,SAClB,CAAC,CAAC,cAAc,SAAS,eAAe;AAG7C,UACE,MAAM,MAAM,YACZ,MAAM;;AACJ,eAAS;AACT,UAAI,MAAM,eAAe;AACvB,uDAAY,aAAZ,oCAAuB;AAAA;AAAA;AAQ7B,UAAM,kBAAkB,MAAM;AAK9B,UACE,MAAM,MAAM,MACZ,MAAM;AACJ,eAAS,MAAM;AACb;AACA;AACA;AAAA;AAAA;AAKN,cAAU,MAAM;AACd;AACA;AACA,eAAS;AAAA;AAGX,cAAU,MAAM;AACd,eAAS;AAAA;AAGX,UAAM,eAAe,CAAC,QAAoB;AACxC,eAAS,QAAQ;AACjB,WAAK,cAAc;AAAA;AAGrB,UAAM,eAAe,CAAC,QAAoB;AACxC,eAAS,QAAQ;AACjB,WAAK,cAAc;AAAA;AAGrB,UAAM,gBAAgB,CAAC,QAAuB;AAC5C,WAAK,WAAW;AAAA;AAGlB,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"input.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n :class=\"[\n type === 'textarea' ? 'el-textarea' : 'el-input',\n inputSize ? 'el-input--' + inputSize : '',\n {\n 'is-disabled': inputDisabled,\n 'is-exceed': inputExceed,\n 'el-input-group': $slots.prepend || $slots.append,\n 'el-input-group--append': $slots.append,\n 'el-input-group--prepend': $slots.prepend,\n 'el-input--prefix': $slots.prefix || prefixIcon,\n 'el-input--suffix':\n $slots.suffix || suffixIcon || clearable || showPassword,\n 'el-input--suffix--password-clear': clearable && showPassword,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" class=\"el-input-group__prepend\">\n <slot name=\"prepend\" />\n </div>\n\n <input\n ref=\"input\"\n class=\"el-input__inner\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" class=\"el-input__prefix\">\n <span class=\"el-input__prefix-inner\">\n <slot name=\"prefix\"></slot>\n <el-icon v-if=\"prefixIcon\" class=\"el-input__icon\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </span>\n </span>\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" class=\"el-input__suffix\">\n <span class=\"el-input__suffix-inner\">\n <template v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\">\n <slot name=\"suffix\"></slot>\n <el-icon v-if=\"suffixIcon\" class=\"el-input__icon\">\n <component :is=\"suffixIcon\" />\n </el-icon>\n </template>\n <el-icon\n v-if=\"showClear\"\n class=\"el-input__icon el-input__clear\"\n @mousedown.prevent\n @click=\"clear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-if=\"showPwdVisible\"\n class=\"el-input__icon el-input__clear\"\n @click=\"handlePasswordVisible\"\n >\n <icon-view />\n </el-icon>\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n <span class=\"el-input__count-inner\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n </span>\n <el-icon\n v-if=\"validateState && validateIcon\"\n class=\"el-input__icon el-input__validateIcon\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </span>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" class=\"el-input-group__append\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n ref=\"textarea\"\n class=\"el-textarea__inner\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"computedTextareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n watch,\n nextTick,\n getCurrentInstance,\n ref,\n shallowRef,\n onMounted,\n onUpdated,\n} from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CircleClose, View as IconView } from '@element-plus/icons-vue'\nimport { ValidateComponentsMap } from '@element-plus/utils/icon'\nimport {\n useAttrs,\n useDisabled,\n useFormItem,\n useSize,\n} from '@element-plus/hooks'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport { isObject } from '@element-plus/utils/util'\nimport isServer from '@element-plus/utils/isServer'\nimport { isKorean } from '@element-plus/utils/isDef'\nimport { calcTextareaHeight } from './calc-textarea-height'\nimport { inputProps, inputEmits } from './input'\n\nimport type { StyleValue } from '@element-plus/utils/types'\n\ntype TargetElement = HTMLInputElement | HTMLTextAreaElement\n\nconst PENDANT_MAP = {\n suffix: 'append',\n prefix: 'prepend',\n} as const\n\nexport default defineComponent({\n name: 'ElInput',\n\n components: { ElIcon, CircleClose, IconView },\n\n inheritAttrs: false,\n\n props: inputProps,\n emits: inputEmits,\n\n setup(props, { slots, emit, attrs: rawAttrs }) {\n const instance = getCurrentInstance()!\n const attrs = useAttrs()\n\n const { form, formItem } = useFormItem()\n const inputSize = useSize()\n const inputDisabled = useDisabled()\n\n const input = ref<HTMLInputElement>()\n const textarea = ref<HTMLTextAreaElement>()\n const focused = ref(false)\n const hovering = ref(false)\n const isComposing = ref(false)\n const passwordVisible = ref(false)\n const _textareaCalcStyle = shallowRef(props.inputStyle)\n\n const inputOrTextarea = computed(() => input.value || textarea.value)\n\n const needStatusIcon = computed(() => form?.statusIcon ?? false)\n const validateState = computed(() => formItem?.validateState || '')\n const validateIcon = computed(\n () => ValidateComponentsMap[validateState.value]\n )\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n const computedTextareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n _textareaCalcStyle.value,\n { resize: props.resize },\n ])\n const nativeInputValue = computed(() =>\n props.modelValue === null || props.modelValue === undefined\n ? ''\n : String(props.modelValue)\n )\n const showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n )\n const showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n (!!nativeInputValue.value || focused.value)\n )\n const isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!attrs.value.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n )\n const textLength = computed(() => Array.from(nativeInputValue.value).length)\n const inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value &&\n textLength.value > Number(attrs.value.maxlength)\n )\n\n const resizeTextarea = () => {\n const { type, autosize } = props\n\n if (isServer || type !== 'textarea') return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n _textareaCalcStyle.value = {\n ...calcTextareaHeight(textarea.value!, minRows, maxRows),\n }\n } else {\n _textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value!).minHeight,\n }\n }\n }\n\n const setNativeInputValue = () => {\n const input = inputOrTextarea.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n }\n\n const calcIconOffset = (place: 'prefix' | 'suffix') => {\n const { el } = instance.vnode\n if (!el) return\n const elList: HTMLSpanElement[] = Array.from(\n el.querySelectorAll(`.el-input__${place}`)\n )\n const target = elList.find((item) => item.parentNode === el)\n\n if (!target) return\n\n const pendant = PENDANT_MAP[place]\n\n if (slots[pendant]) {\n target.style.transform = `translateX(${place === 'suffix' ? '-' : ''}${\n el.querySelector(`.el-input-group__${pendant}`).offsetWidth\n }px)`\n } else {\n target.removeAttribute('style')\n }\n }\n\n const updateIconOffset = () => {\n calcIconOffset('prefix')\n calcIconOffset('suffix')\n }\n\n const handleInput = (event: Event) => {\n const { value } = event.target as TargetElement\n\n // should not emit input during composition\n // see: https://github.com/ElemeFE/element/issues/10516\n if (isComposing.value) return\n\n // hack for https://github.com/ElemeFE/element/issues/8548\n // should remove the following line when we don't support IE\n if (value === nativeInputValue.value) return\n\n emit(UPDATE_MODEL_EVENT, value)\n emit('input', value)\n\n // ensure native input value is controlled\n // see: https://github.com/ElemeFE/element/issues/12850\n nextTick(setNativeInputValue)\n }\n\n const handleChange = (event: Event) => {\n emit('change', (event.target as TargetElement).value)\n }\n\n const focus = () => {\n // see: https://github.com/ElemeFE/element/issues/18573\n nextTick(() => {\n inputOrTextarea.value?.focus()\n })\n }\n\n const blur = () => {\n inputOrTextarea.value?.blur()\n }\n\n const handleFocus = (event: FocusEvent) => {\n focused.value = true\n emit('focus', event)\n }\n\n const handleBlur = (event: FocusEvent) => {\n focused.value = false\n emit('blur', event)\n if (props.validateEvent) {\n formItem?.validate?.('blur')\n }\n }\n\n const select = () => {\n inputOrTextarea.value?.select()\n }\n\n const handleCompositionStart = (event: CompositionEvent) => {\n emit('compositionstart', event)\n isComposing.value = true\n }\n\n const handleCompositionUpdate = (event: CompositionEvent) => {\n emit('compositionupdate', event)\n const text = (event.target as HTMLInputElement)?.value\n const lastCharacter = text[text.length - 1] || ''\n isComposing.value = !isKorean(lastCharacter)\n }\n\n const handleCompositionEnd = (event: CompositionEvent) => {\n emit('compositionend', event)\n if (isComposing.value) {\n isComposing.value = false\n handleInput(event)\n }\n }\n\n const clear = () => {\n emit(UPDATE_MODEL_EVENT, '')\n emit('change', '')\n emit('clear')\n emit('input', '')\n }\n\n const handlePasswordVisible = () => {\n passwordVisible.value = !passwordVisible.value\n focus()\n }\n\n const suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n )\n\n watch(\n () => props.modelValue,\n () => {\n nextTick(resizeTextarea)\n if (props.validateEvent) {\n formItem?.validate?.('change')\n }\n }\n )\n\n // native input value is set explicitly\n // do not use v-model / :value in template\n // see: https://github.com/ElemeFE/element/issues/14521\n watch(nativeInputValue, () => setNativeInputValue())\n\n // when change between <input> and <textarea>,\n // update DOM dependent value and styles\n // https://github.com/ElemeFE/element/issues/14857\n watch(\n () => props.type,\n () => {\n nextTick(() => {\n setNativeInputValue()\n resizeTextarea()\n updateIconOffset()\n })\n }\n )\n\n onMounted(() => {\n setNativeInputValue()\n updateIconOffset()\n nextTick(resizeTextarea)\n })\n\n onUpdated(() => {\n nextTick(updateIconOffset)\n })\n\n const onMouseLeave = (evt: MouseEvent) => {\n hovering.value = false\n emit('mouseleave', evt)\n }\n\n const onMouseEnter = (evt: MouseEvent) => {\n hovering.value = true\n emit('mouseenter', evt)\n }\n\n const handleKeydown = (evt: KeyboardEvent) => {\n emit('keydown', evt)\n }\n\n return {\n input,\n textarea,\n attrs,\n inputSize,\n validateState,\n validateIcon,\n containerStyle,\n computedTextareaStyle,\n inputDisabled,\n showClear,\n showPwdVisible,\n isWordLimitVisible,\n textLength,\n hovering,\n inputExceed,\n passwordVisible,\n inputOrTextarea,\n suffixVisible,\n\n resizeTextarea,\n handleInput,\n handleChange,\n handleFocus,\n handleBlur,\n handleCompositionStart,\n handleCompositionUpdate,\n handleCompositionEnd,\n handlePasswordVisible,\n clear,\n select,\n focus,\n blur,\n onMouseLeave,\n onMouseEnter,\n handleKeydown,\n }\n },\n})\n</script>\n"],"names":["IconView"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"input.vue_vue_type_template_id_3290dcb6_lang.mjs","sources":["../../../../../../packages/components/input/src/input.vue?vue&type=template&id=3290dcb6&lang.js"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n :class=\"[\n type === 'textarea' ? 'el-textarea' : 'el-input',\n inputSize ? 'el-input--' + inputSize : '',\n {\n 'is-disabled': inputDisabled,\n 'is-exceed': inputExceed,\n 'el-input-group': $slots.prepend || $slots.append,\n 'el-input-group--append': $slots.append,\n 'el-input-group--prepend': $slots.prepend,\n 'el-input--prefix': $slots.prefix || prefixIcon,\n 'el-input--suffix':\n $slots.suffix || suffixIcon || clearable || showPassword,\n 'el-input--suffix--password-clear': clearable && showPassword,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" class=\"el-input-group__prepend\">\n <slot name=\"prepend\" />\n </div>\n\n <input\n ref=\"input\"\n class=\"el-input__inner\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" class=\"el-input__prefix\">\n <span class=\"el-input__prefix-inner\">\n <slot name=\"prefix\"></slot>\n <el-icon v-if=\"prefixIcon\" class=\"el-input__icon\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </span>\n </span>\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" class=\"el-input__suffix\">\n <span class=\"el-input__suffix-inner\">\n <template v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\">\n <slot name=\"suffix\"></slot>\n <el-icon v-if=\"suffixIcon\" class=\"el-input__icon\">\n <component :is=\"suffixIcon\" />\n </el-icon>\n </template>\n <el-icon\n v-if=\"showClear\"\n class=\"el-input__icon el-input__clear\"\n @mousedown.prevent\n @click=\"clear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-if=\"showPwdVisible\"\n class=\"el-input__icon el-input__clear\"\n @click=\"handlePasswordVisible\"\n >\n <icon-view />\n </el-icon>\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n <span class=\"el-input__count-inner\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n </span>\n <el-icon\n v-if=\"validateState && validateIcon\"\n class=\"el-input__icon el-input__validateIcon\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </span>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" class=\"el-input-group__append\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n ref=\"textarea\"\n class=\"el-textarea__inner\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"computedTextareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n inject,\n computed,\n watch,\n nextTick,\n getCurrentInstance,\n ref,\n shallowRef,\n onMounted,\n onUpdated,\n} from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CircleClose, View as IconView } from '@element-plus/icons'\nimport { ValidateComponentsMap } from '@element-plus/utils/icon'\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport { useAttrs, useFormItem } from '@element-plus/hooks'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport { isObject } from '@element-plus/utils/util'\nimport isServer from '@element-plus/utils/isServer'\nimport { isKorean } from '@element-plus/utils/isDef'\nimport { calcTextareaHeight } from './calc-textarea-height'\nimport { inputProps, inputEmits } from './input'\n\nimport type { StyleValue } from '@element-plus/utils/types'\n\ntype TargetElement = HTMLInputElement | HTMLTextAreaElement\n\nconst PENDANT_MAP = {\n suffix: 'append',\n prefix: 'prepend',\n} as const\n\nexport default defineComponent({\n name: 'ElInput',\n\n components: { ElIcon, CircleClose, IconView },\n\n inheritAttrs: false,\n\n props: inputProps,\n emits: inputEmits,\n\n setup(props, { slots, emit, attrs: rawAttrs }) {\n const instance = getCurrentInstance()!\n const attrs = useAttrs()\n\n const elForm = inject(elFormKey, undefined)\n const elFormItem = inject(elFormItemKey, undefined)\n\n const { size: inputSize, disabled: inputDisabled } = useFormItem({})\n\n const input = ref<HTMLInputElement>()\n const textarea = ref<HTMLTextAreaElement>()\n const focused = ref(false)\n const hovering = ref(false)\n const isComposing = ref(false)\n const passwordVisible = ref(false)\n const _textareaCalcStyle = shallowRef(props.inputStyle)\n\n const inputOrTextarea = computed(() => input.value || textarea.value)\n\n const needStatusIcon = computed(() => elForm?.statusIcon ?? false)\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(\n () => ValidateComponentsMap[validateState.value]\n )\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n const computedTextareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n _textareaCalcStyle.value,\n { resize: props.resize },\n ])\n const nativeInputValue = computed(() =>\n props.modelValue === null || props.modelValue === undefined\n ? ''\n : String(props.modelValue)\n )\n const showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n )\n const showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n (!!nativeInputValue.value || focused.value)\n )\n const isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!attrs.value.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n )\n const textLength = computed(() => Array.from(nativeInputValue.value).length)\n const inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value &&\n textLength.value > Number(attrs.value.maxlength)\n )\n\n const resizeTextarea = () => {\n const { type, autosize } = props\n\n if (isServer || type !== 'textarea') return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n _textareaCalcStyle.value = {\n ...calcTextareaHeight(textarea.value!, minRows, maxRows),\n }\n } else {\n _textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value!).minHeight,\n }\n }\n }\n\n const setNativeInputValue = () => {\n const input = inputOrTextarea.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n }\n\n const calcIconOffset = (place: 'prefix' | 'suffix') => {\n const { el } = instance.vnode\n if (!el) return\n const elList: HTMLSpanElement[] = Array.from(\n el.querySelectorAll(`.el-input__${place}`)\n )\n const target = elList.find((item) => item.parentNode === el)\n\n if (!target) return\n\n const pendant = PENDANT_MAP[place]\n\n if (slots[pendant]) {\n target.style.transform = `translateX(${place === 'suffix' ? '-' : ''}${\n el.querySelector(`.el-input-group__${pendant}`).offsetWidth\n }px)`\n } else {\n target.removeAttribute('style')\n }\n }\n\n const updateIconOffset = () => {\n calcIconOffset('prefix')\n calcIconOffset('suffix')\n }\n\n const handleInput = (event: Event) => {\n const { value } = event.target as TargetElement\n\n // should not emit input during composition\n // see: https://github.com/ElemeFE/element/issues/10516\n if (isComposing.value) return\n\n // hack for https://github.com/ElemeFE/element/issues/8548\n // should remove the following line when we don't support IE\n if (value === nativeInputValue.value) return\n\n emit(UPDATE_MODEL_EVENT, value)\n emit('input', value)\n\n // ensure native input value is controlled\n // see: https://github.com/ElemeFE/element/issues/12850\n nextTick(setNativeInputValue)\n }\n\n const handleChange = (event: Event) => {\n emit('change', (event.target as TargetElement).value)\n }\n\n const focus = () => {\n // see: https://github.com/ElemeFE/element/issues/18573\n nextTick(() => {\n inputOrTextarea.value?.focus()\n })\n }\n\n const blur = () => {\n inputOrTextarea.value?.blur()\n }\n\n const handleFocus = (event: FocusEvent) => {\n focused.value = true\n emit('focus', event)\n }\n\n const handleBlur = (event: FocusEvent) => {\n focused.value = false\n emit('blur', event)\n if (props.validateEvent) {\n elFormItem?.validate?.('blur')\n }\n }\n\n const select = () => {\n inputOrTextarea.value?.select()\n }\n\n const handleCompositionStart = (event: CompositionEvent) => {\n emit('compositionstart', event)\n isComposing.value = true\n }\n\n const handleCompositionUpdate = (event: CompositionEvent) => {\n emit('compositionupdate', event)\n const text = (event.target as HTMLInputElement)?.value\n const lastCharacter = text[text.length - 1] || ''\n isComposing.value = !isKorean(lastCharacter)\n }\n\n const handleCompositionEnd = (event: CompositionEvent) => {\n emit('compositionend', event)\n if (isComposing.value) {\n isComposing.value = false\n handleInput(event)\n }\n }\n\n const clear = () => {\n emit(UPDATE_MODEL_EVENT, '')\n emit('change', '')\n emit('clear')\n emit('input', '')\n }\n\n const handlePasswordVisible = () => {\n passwordVisible.value = !passwordVisible.value\n focus()\n }\n\n const suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n )\n\n watch(\n () => props.modelValue,\n () => {\n nextTick(resizeTextarea)\n if (props.validateEvent) {\n elFormItem?.validate?.('change')\n }\n }\n )\n\n // native input value is set explicitly\n // do not use v-model / :value in template\n // see: https://github.com/ElemeFE/element/issues/14521\n watch(nativeInputValue, () => setNativeInputValue())\n\n // when change between <input> and <textarea>,\n // update DOM dependent value and styles\n // https://github.com/ElemeFE/element/issues/14857\n watch(\n () => props.type,\n () => {\n nextTick(() => {\n setNativeInputValue()\n resizeTextarea()\n updateIconOffset()\n })\n }\n )\n\n onMounted(() => {\n setNativeInputValue()\n updateIconOffset()\n nextTick(resizeTextarea)\n })\n\n onUpdated(() => {\n nextTick(updateIconOffset)\n })\n\n const onMouseLeave = (evt: MouseEvent) => {\n hovering.value = false\n emit('mouseleave', evt)\n }\n\n const onMouseEnter = (evt: MouseEvent) => {\n hovering.value = true\n emit('mouseenter', evt)\n }\n\n const handleKeydown = (evt: KeyboardEvent) => {\n emit('keydown', evt)\n }\n\n return {\n input,\n textarea,\n attrs,\n inputSize,\n validateState,\n validateIcon,\n containerStyle,\n computedTextareaStyle,\n inputDisabled,\n showClear,\n showPwdVisible,\n isWordLimitVisible,\n textLength,\n hovering,\n inputExceed,\n passwordVisible,\n inputOrTextarea,\n suffixVisible,\n\n resizeTextarea,\n handleInput,\n handleChange,\n handleFocus,\n handleBlur,\n handleCompositionStart,\n handleCompositionUpdate,\n handleCompositionEnd,\n handlePasswordVisible,\n clear,\n select,\n focus,\n blur,\n onMouseLeave,\n onMouseEnter,\n handleKeydown,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createCommentVNode","_renderSlot","_createElementVNode","_mergeProps","_createBlock","_createVNode"],"mappings":";;;;EA0BiC,OAAM;AAAA;;;;EA2BQ,OAAM;AAAA;qBACvC,OAAM;;;EASa,OAAM;AAAA;qBACzB,OAAM;;;EAsBsB,OAAM;AAAA;qBAC9B,OAAM;;;EAcQ,OAAM;AAAA;;;;EA2BA,OAAM;AAAA;;;;;sCA/H1CA;IAEG;;;;;;;;;;;;;;;IAgBA,sBAAO;IACP,uDAAY;IACZ,uDAAY;;IAEbC;IACgB,yCAAhBD;MACEC;MACW,YAAO,wBAAlBD,0BAAA;QACEE;;MAGFC,4BAAAC;QACE,KAAI;AAAA,QACJ,OAAM;AAAA,SACE;QACP,MAAM,oBAAgB,6CAAyC;QAC/D,UAAU;QACV,UAAU;QACV,cAAc;QACd,UAAU;QACV,cAAY;QACZ,aAAa;QACb,OAAO;QACP,2DAAkB;QAClB,4DAAmB;QACnB,yDAAgB;QAChB,gDAAO;QACP,gDAAO;QACP,+CAAM;QACN,iDAAQ;QACR,kDAAS;;MAGZH;MACY,YAAO,UAAU,gCAA7BD,2BAAA;QACEG,2BAAA;UACED;UACe,gCAAfG;;YAA2B,OAAM;AAAA;6BAC/B;4BAAAA,oCAAgB;;;;;;MAKtBJ;MACY,mCAAZD,2BAAA;QACEG,2BAAA;WACmB,mBAAc,wBAAmB,wCAAlDH;YACEE;YACe,gCAAfG;;cAA2B,OAAM;AAAA;+BAC/B;8BAAAA,oCAAgB;;;;;UAIZ,+BADRA;;YAEE,OAAM;AAAA,YACL,qDAAD;;YACC,SAAO;;6BAER;cAAAC;;;;UAGM,oCADRD;;YAEE,OAAM;AAAA,YACL,SAAO;;6BAER;cAAAC;;;;UAEU,wCAAZN,2BAAA;YACEG,2BAAA,4BACK,2CAAmB,WAAM;;;QAK1B,sBAAiB,kCADzBE;;UAEE,OAAM;AAAA;2BAEN;0BAAAA,oCAAgB;;;;;MAIpBJ;MACW,YAAO,uBAAlBD,0BAAA;QACEE;;4BAKJF;MADAC;MAEEE,+BAAAC;QACE,KAAI;AAAA,QACJ,OAAM;AAAA,SACE;QACP,UAAU;QACV,UAAU;QACV,UAAU;QACV,cAAc;QACd,OAAO;QACP,cAAY;QACZ,aAAa;QACb,2DAAkB;QAClB,8DAAmB;QACnB,2DAAgB;QAChB,kDAAO;QACP,kDAAO;QACP,iDAAM;QACN,mDAAQ;QACR,oDAAS;;MAEA,wCAAZJ,2BAAA,6BACK,2CAAmB,WAAM;;;YA/HxB;;;;;;"}
1
+ {"version":3,"file":"input.vue_vue_type_template_id_3290dcb6_lang.mjs","sources":["../../../../../../packages/components/input/src/input.vue?vue&type=template&id=3290dcb6&lang.js"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n :class=\"[\n type === 'textarea' ? 'el-textarea' : 'el-input',\n inputSize ? 'el-input--' + inputSize : '',\n {\n 'is-disabled': inputDisabled,\n 'is-exceed': inputExceed,\n 'el-input-group': $slots.prepend || $slots.append,\n 'el-input-group--append': $slots.append,\n 'el-input-group--prepend': $slots.prepend,\n 'el-input--prefix': $slots.prefix || prefixIcon,\n 'el-input--suffix':\n $slots.suffix || suffixIcon || clearable || showPassword,\n 'el-input--suffix--password-clear': clearable && showPassword,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" class=\"el-input-group__prepend\">\n <slot name=\"prepend\" />\n </div>\n\n <input\n ref=\"input\"\n class=\"el-input__inner\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" class=\"el-input__prefix\">\n <span class=\"el-input__prefix-inner\">\n <slot name=\"prefix\"></slot>\n <el-icon v-if=\"prefixIcon\" class=\"el-input__icon\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </span>\n </span>\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" class=\"el-input__suffix\">\n <span class=\"el-input__suffix-inner\">\n <template v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\">\n <slot name=\"suffix\"></slot>\n <el-icon v-if=\"suffixIcon\" class=\"el-input__icon\">\n <component :is=\"suffixIcon\" />\n </el-icon>\n </template>\n <el-icon\n v-if=\"showClear\"\n class=\"el-input__icon el-input__clear\"\n @mousedown.prevent\n @click=\"clear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-if=\"showPwdVisible\"\n class=\"el-input__icon el-input__clear\"\n @click=\"handlePasswordVisible\"\n >\n <icon-view />\n </el-icon>\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n <span class=\"el-input__count-inner\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n </span>\n <el-icon\n v-if=\"validateState && validateIcon\"\n class=\"el-input__icon el-input__validateIcon\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </span>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" class=\"el-input-group__append\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n ref=\"textarea\"\n class=\"el-textarea__inner\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"computedTextareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n watch,\n nextTick,\n getCurrentInstance,\n ref,\n shallowRef,\n onMounted,\n onUpdated,\n} from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CircleClose, View as IconView } from '@element-plus/icons-vue'\nimport { ValidateComponentsMap } from '@element-plus/utils/icon'\nimport {\n useAttrs,\n useDisabled,\n useFormItem,\n useSize,\n} from '@element-plus/hooks'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport { isObject } from '@element-plus/utils/util'\nimport isServer from '@element-plus/utils/isServer'\nimport { isKorean } from '@element-plus/utils/isDef'\nimport { calcTextareaHeight } from './calc-textarea-height'\nimport { inputProps, inputEmits } from './input'\n\nimport type { StyleValue } from '@element-plus/utils/types'\n\ntype TargetElement = HTMLInputElement | HTMLTextAreaElement\n\nconst PENDANT_MAP = {\n suffix: 'append',\n prefix: 'prepend',\n} as const\n\nexport default defineComponent({\n name: 'ElInput',\n\n components: { ElIcon, CircleClose, IconView },\n\n inheritAttrs: false,\n\n props: inputProps,\n emits: inputEmits,\n\n setup(props, { slots, emit, attrs: rawAttrs }) {\n const instance = getCurrentInstance()!\n const attrs = useAttrs()\n\n const { form, formItem } = useFormItem()\n const inputSize = useSize()\n const inputDisabled = useDisabled()\n\n const input = ref<HTMLInputElement>()\n const textarea = ref<HTMLTextAreaElement>()\n const focused = ref(false)\n const hovering = ref(false)\n const isComposing = ref(false)\n const passwordVisible = ref(false)\n const _textareaCalcStyle = shallowRef(props.inputStyle)\n\n const inputOrTextarea = computed(() => input.value || textarea.value)\n\n const needStatusIcon = computed(() => form?.statusIcon ?? false)\n const validateState = computed(() => formItem?.validateState || '')\n const validateIcon = computed(\n () => ValidateComponentsMap[validateState.value]\n )\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n const computedTextareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n _textareaCalcStyle.value,\n { resize: props.resize },\n ])\n const nativeInputValue = computed(() =>\n props.modelValue === null || props.modelValue === undefined\n ? ''\n : String(props.modelValue)\n )\n const showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n )\n const showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n (!!nativeInputValue.value || focused.value)\n )\n const isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!attrs.value.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n )\n const textLength = computed(() => Array.from(nativeInputValue.value).length)\n const inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value &&\n textLength.value > Number(attrs.value.maxlength)\n )\n\n const resizeTextarea = () => {\n const { type, autosize } = props\n\n if (isServer || type !== 'textarea') return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n _textareaCalcStyle.value = {\n ...calcTextareaHeight(textarea.value!, minRows, maxRows),\n }\n } else {\n _textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value!).minHeight,\n }\n }\n }\n\n const setNativeInputValue = () => {\n const input = inputOrTextarea.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n }\n\n const calcIconOffset = (place: 'prefix' | 'suffix') => {\n const { el } = instance.vnode\n if (!el) return\n const elList: HTMLSpanElement[] = Array.from(\n el.querySelectorAll(`.el-input__${place}`)\n )\n const target = elList.find((item) => item.parentNode === el)\n\n if (!target) return\n\n const pendant = PENDANT_MAP[place]\n\n if (slots[pendant]) {\n target.style.transform = `translateX(${place === 'suffix' ? '-' : ''}${\n el.querySelector(`.el-input-group__${pendant}`).offsetWidth\n }px)`\n } else {\n target.removeAttribute('style')\n }\n }\n\n const updateIconOffset = () => {\n calcIconOffset('prefix')\n calcIconOffset('suffix')\n }\n\n const handleInput = (event: Event) => {\n const { value } = event.target as TargetElement\n\n // should not emit input during composition\n // see: https://github.com/ElemeFE/element/issues/10516\n if (isComposing.value) return\n\n // hack for https://github.com/ElemeFE/element/issues/8548\n // should remove the following line when we don't support IE\n if (value === nativeInputValue.value) return\n\n emit(UPDATE_MODEL_EVENT, value)\n emit('input', value)\n\n // ensure native input value is controlled\n // see: https://github.com/ElemeFE/element/issues/12850\n nextTick(setNativeInputValue)\n }\n\n const handleChange = (event: Event) => {\n emit('change', (event.target as TargetElement).value)\n }\n\n const focus = () => {\n // see: https://github.com/ElemeFE/element/issues/18573\n nextTick(() => {\n inputOrTextarea.value?.focus()\n })\n }\n\n const blur = () => {\n inputOrTextarea.value?.blur()\n }\n\n const handleFocus = (event: FocusEvent) => {\n focused.value = true\n emit('focus', event)\n }\n\n const handleBlur = (event: FocusEvent) => {\n focused.value = false\n emit('blur', event)\n if (props.validateEvent) {\n formItem?.validate?.('blur')\n }\n }\n\n const select = () => {\n inputOrTextarea.value?.select()\n }\n\n const handleCompositionStart = (event: CompositionEvent) => {\n emit('compositionstart', event)\n isComposing.value = true\n }\n\n const handleCompositionUpdate = (event: CompositionEvent) => {\n emit('compositionupdate', event)\n const text = (event.target as HTMLInputElement)?.value\n const lastCharacter = text[text.length - 1] || ''\n isComposing.value = !isKorean(lastCharacter)\n }\n\n const handleCompositionEnd = (event: CompositionEvent) => {\n emit('compositionend', event)\n if (isComposing.value) {\n isComposing.value = false\n handleInput(event)\n }\n }\n\n const clear = () => {\n emit(UPDATE_MODEL_EVENT, '')\n emit('change', '')\n emit('clear')\n emit('input', '')\n }\n\n const handlePasswordVisible = () => {\n passwordVisible.value = !passwordVisible.value\n focus()\n }\n\n const suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n )\n\n watch(\n () => props.modelValue,\n () => {\n nextTick(resizeTextarea)\n if (props.validateEvent) {\n formItem?.validate?.('change')\n }\n }\n )\n\n // native input value is set explicitly\n // do not use v-model / :value in template\n // see: https://github.com/ElemeFE/element/issues/14521\n watch(nativeInputValue, () => setNativeInputValue())\n\n // when change between <input> and <textarea>,\n // update DOM dependent value and styles\n // https://github.com/ElemeFE/element/issues/14857\n watch(\n () => props.type,\n () => {\n nextTick(() => {\n setNativeInputValue()\n resizeTextarea()\n updateIconOffset()\n })\n }\n )\n\n onMounted(() => {\n setNativeInputValue()\n updateIconOffset()\n nextTick(resizeTextarea)\n })\n\n onUpdated(() => {\n nextTick(updateIconOffset)\n })\n\n const onMouseLeave = (evt: MouseEvent) => {\n hovering.value = false\n emit('mouseleave', evt)\n }\n\n const onMouseEnter = (evt: MouseEvent) => {\n hovering.value = true\n emit('mouseenter', evt)\n }\n\n const handleKeydown = (evt: KeyboardEvent) => {\n emit('keydown', evt)\n }\n\n return {\n input,\n textarea,\n attrs,\n inputSize,\n validateState,\n validateIcon,\n containerStyle,\n computedTextareaStyle,\n inputDisabled,\n showClear,\n showPwdVisible,\n isWordLimitVisible,\n textLength,\n hovering,\n inputExceed,\n passwordVisible,\n inputOrTextarea,\n suffixVisible,\n\n resizeTextarea,\n handleInput,\n handleChange,\n handleFocus,\n handleBlur,\n handleCompositionStart,\n handleCompositionUpdate,\n handleCompositionEnd,\n handlePasswordVisible,\n clear,\n select,\n focus,\n blur,\n onMouseLeave,\n onMouseEnter,\n handleKeydown,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createCommentVNode","_renderSlot","_createElementVNode","_mergeProps","_createBlock","_createVNode"],"mappings":";;;;EA0BiC,OAAM;AAAA;;;;EA2BQ,OAAM;AAAA;qBACvC,OAAM;;;EASa,OAAM;AAAA;qBACzB,OAAM;;;EAsBsB,OAAM;AAAA;qBAC9B,OAAM;;;EAcQ,OAAM;AAAA;;;;EA2BA,OAAM;AAAA;;;;;sCA/H1CA;IAEG;;;;;;;;;;;;;;;IAgBA,sBAAO;IACP,uDAAY;IACZ,uDAAY;;IAEbC;IACgB,yCAAhBD;MACEC;MACW,YAAO,wBAAlBD,0BAAA;QACEE;;MAGFC,4BAAAC;QACE,KAAI;AAAA,QACJ,OAAM;AAAA,SACE;QACP,MAAM,oBAAgB,6CAAyC;QAC/D,UAAU;QACV,UAAU;QACV,cAAc;QACd,UAAU;QACV,cAAY;QACZ,aAAa;QACb,OAAO;QACP,2DAAkB;QAClB,4DAAmB;QACnB,yDAAgB;QAChB,gDAAO;QACP,gDAAO;QACP,+CAAM;QACN,iDAAQ;QACR,kDAAS;;MAGZH;MACY,YAAO,UAAU,gCAA7BD,2BAAA;QACEG,2BAAA;UACED;UACe,gCAAfG;;YAA2B,OAAM;AAAA;6BAC/B;4BAAAA,oCAAgB;;;;;;MAKtBJ;MACY,mCAAZD,2BAAA;QACEG,2BAAA;WACmB,mBAAc,wBAAmB,wCAAlDH;YACEE;YACe,gCAAfG;;cAA2B,OAAM;AAAA;+BAC/B;8BAAAA,oCAAgB;;;;;UAIZ,+BADRA;;YAEE,OAAM;AAAA,YACL,qDAAD;;YACC,SAAO;;6BAER;cAAAC;;;;UAGM,oCADRD;;YAEE,OAAM;AAAA,YACL,SAAO;;6BAER;cAAAC;;;;UAEU,wCAAZN,2BAAA;YACEG,2BAAA,4BACK,2CAAmB,WAAM;;;QAK1B,sBAAiB,kCADzBE;;UAEE,OAAM;AAAA;2BAEN;0BAAAA,oCAAgB;;;;;MAIpBJ;MACW,YAAO,uBAAlBD,0BAAA;QACEE;;4BAKJF;MADAC;MAEEE,+BAAAC;QACE,KAAI;AAAA,QACJ,OAAM;AAAA,SACE;QACP,UAAU;QACV,UAAU;QACV,UAAU;QACV,cAAc;QACd,OAAO;QACP,cAAY;QACZ,aAAa;QACb,2DAAkB;QAClB,8DAAmB;QACnB,2DAAgB;QAChB,kDAAO;QACP,kDAAO;QACP,iDAAM;QACN,mDAAQ;QACR,oDAAS;;MAEA,wCAAZJ,2BAAA,6BACK,2CAAmB,WAAM;;;YA/HxB;;;;;;"}