element-plus-secondary 0.6.2 → 0.6.4

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 (539) hide show
  1. package/dist/index.css +1 -1
  2. package/es/components/alert/index.mjs +2 -2
  3. package/es/components/alert/src/alert.mjs +36 -96
  4. package/es/components/alert/src/alert.mjs.map +1 -1
  5. package/es/components/alert/src/alert2.mjs +96 -36
  6. package/es/components/alert/src/alert2.mjs.map +1 -1
  7. package/es/components/autocomplete/src/autocomplete.mjs +1 -1
  8. package/es/components/backtop/index.mjs +2 -2
  9. package/es/components/backtop/src/backtop.mjs +54 -21
  10. package/es/components/backtop/src/backtop.mjs.map +1 -1
  11. package/es/components/backtop/src/backtop2.mjs +21 -54
  12. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  13. package/es/components/badge/index.mjs +2 -2
  14. package/es/components/badge/src/badge.mjs +17 -55
  15. package/es/components/badge/src/badge.mjs.map +1 -1
  16. package/es/components/badge/src/badge2.mjs +55 -17
  17. package/es/components/badge/src/badge2.mjs.map +1 -1
  18. package/es/components/breadcrumb/index.mjs +2 -2
  19. package/es/components/breadcrumb/src/breadcrumb.mjs +11 -37
  20. package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  21. package/es/components/breadcrumb/src/breadcrumb2.mjs +37 -11
  22. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  23. package/es/components/calendar/index.mjs +2 -2
  24. package/es/components/calendar/src/calendar.mjs +131 -18
  25. package/es/components/calendar/src/calendar.mjs.map +1 -1
  26. package/es/components/calendar/src/calendar2.mjs +18 -131
  27. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  28. package/es/components/card/index.mjs +2 -2
  29. package/es/components/card/src/card.mjs +35 -16
  30. package/es/components/card/src/card.mjs.map +1 -1
  31. package/es/components/card/src/card2.mjs +16 -35
  32. package/es/components/card/src/card2.mjs.map +1 -1
  33. package/es/components/cascader/src/index.mjs +2 -2
  34. package/es/components/cascader-panel/src/index.mjs +1 -1
  35. package/es/components/cascader-panel/src/menu.mjs +1 -1
  36. package/es/components/cascader-panel/src/node.mjs +209 -116
  37. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  38. package/es/components/cascader-panel/src/node2.mjs +116 -209
  39. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  40. package/es/components/cascader-panel/src/store.mjs +1 -1
  41. package/es/components/check-tag/index.mjs +2 -2
  42. package/es/components/check-tag/src/check-tag.mjs +12 -30
  43. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  44. package/es/components/check-tag/src/check-tag2.mjs +30 -12
  45. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  46. package/es/components/collapse/index.mjs +2 -2
  47. package/es/components/collapse/src/collapse.mjs +17 -30
  48. package/es/components/collapse/src/collapse.mjs.map +1 -1
  49. package/es/components/collapse/src/collapse2.mjs +30 -17
  50. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  51. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  52. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  53. package/es/components/dropdown/src/dropdown.mjs +2 -2
  54. package/es/components/dropdown/src/dropdown2.mjs +1 -1
  55. package/es/components/form/index.mjs +2 -2
  56. package/es/components/form/src/form-item.mjs +316 -43
  57. package/es/components/form/src/form-item.mjs.map +1 -1
  58. package/es/components/form/src/form-item2.mjs +43 -316
  59. package/es/components/form/src/form-item2.mjs.map +1 -1
  60. package/es/components/image/index.d.ts +2 -2
  61. package/es/components/image/src/image.vue.d.ts +2 -2
  62. package/es/components/image-viewer/index.d.ts +1 -1
  63. package/es/components/image-viewer/src/image-viewer.vue.d.ts +1 -1
  64. package/es/components/index.mjs +35 -35
  65. package/es/components/input/index.mjs +2 -2
  66. package/es/components/input/src/input.mjs +116 -442
  67. package/es/components/input/src/input.mjs.map +1 -1
  68. package/es/components/input/src/input2.mjs +442 -116
  69. package/es/components/input/src/input2.mjs.map +1 -1
  70. package/es/components/input-number/index.mjs +2 -2
  71. package/es/components/input-number/src/input-number.mjs +322 -62
  72. package/es/components/input-number/src/input-number.mjs.map +1 -1
  73. package/es/components/input-number/src/input-number2.mjs +62 -322
  74. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  75. package/es/components/message/index.mjs +1 -1
  76. package/es/components/message/src/message.mjs +146 -86
  77. package/es/components/message/src/message.mjs.map +1 -1
  78. package/es/components/message/src/message2.mjs +86 -146
  79. package/es/components/message/src/message2.mjs.map +1 -1
  80. package/es/components/message/src/method.mjs +2 -2
  81. package/es/components/notification/index.mjs +1 -1
  82. package/es/components/notification/src/notification.mjs +145 -69
  83. package/es/components/notification/src/notification.mjs.map +1 -1
  84. package/es/components/notification/src/notification2.mjs +69 -145
  85. package/es/components/notification/src/notification2.mjs.map +1 -1
  86. package/es/components/notification/src/notify.mjs +2 -2
  87. package/es/components/page-header/index.mjs +2 -2
  88. package/es/components/page-header/src/page-header.mjs +102 -17
  89. package/es/components/page-header/src/page-header.mjs.map +1 -1
  90. package/es/components/page-header/src/page-header2.mjs +17 -102
  91. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  92. package/es/components/pagination/src/components/jumper.mjs +60 -9
  93. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  94. package/es/components/pagination/src/components/jumper2.mjs +9 -60
  95. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  96. package/es/components/pagination/src/components/next.mjs +19 -34
  97. package/es/components/pagination/src/components/next.mjs.map +1 -1
  98. package/es/components/pagination/src/components/next2.mjs +34 -19
  99. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  100. package/es/components/pagination/src/components/pager.mjs +17 -208
  101. package/es/components/pagination/src/components/pager.mjs.map +1 -1
  102. package/es/components/pagination/src/components/pager2.mjs +208 -17
  103. package/es/components/pagination/src/components/pager2.mjs.map +1 -1
  104. package/es/components/pagination/src/components/prev.mjs +18 -34
  105. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  106. package/es/components/pagination/src/components/prev2.mjs +34 -18
  107. package/es/components/pagination/src/components/prev2.mjs.map +1 -1
  108. package/es/components/pagination/src/components/sizes.vue.d.ts +12 -0
  109. package/es/components/pagination/src/components/total.mjs +7 -28
  110. package/es/components/pagination/src/components/total.mjs.map +1 -1
  111. package/es/components/pagination/src/components/total2.mjs +28 -7
  112. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  113. package/es/components/pagination/src/pagination.mjs +5 -5
  114. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  115. package/es/components/popover/index.mjs +2 -2
  116. package/es/components/popover/src/popover.mjs +111 -66
  117. package/es/components/popover/src/popover.mjs.map +1 -1
  118. package/es/components/popover/src/popover2.mjs +66 -111
  119. package/es/components/popover/src/popover2.mjs.map +1 -1
  120. package/es/components/popper/index.mjs +2 -2
  121. package/es/components/popper/src/content.mjs +212 -94
  122. package/es/components/popper/src/content.mjs.map +1 -1
  123. package/es/components/popper/src/content2.mjs +94 -212
  124. package/es/components/popper/src/content2.mjs.map +1 -1
  125. package/es/components/progress/index.mjs +2 -2
  126. package/es/components/progress/src/progress.mjs +202 -57
  127. package/es/components/progress/src/progress.mjs.map +1 -1
  128. package/es/components/progress/src/progress2.mjs +57 -202
  129. package/es/components/progress/src/progress2.mjs.map +1 -1
  130. package/es/components/radio/index.mjs +4 -4
  131. package/es/components/radio/src/radio-button.mjs +68 -9
  132. package/es/components/radio/src/radio-button.mjs.map +1 -1
  133. package/es/components/radio/src/radio-button2.mjs +9 -68
  134. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  135. package/es/components/radio/src/radio-group2.mjs +1 -1
  136. package/es/components/radio/src/radio.mjs +78 -34
  137. package/es/components/radio/src/radio.mjs.map +1 -1
  138. package/es/components/radio/src/radio2.mjs +34 -78
  139. package/es/components/radio/src/radio2.mjs.map +1 -1
  140. package/es/components/result/index.mjs +2 -2
  141. package/es/components/result/src/result.mjs +29 -63
  142. package/es/components/result/src/result.mjs.map +1 -1
  143. package/es/components/result/src/result2.mjs +63 -29
  144. package/es/components/result/src/result2.mjs.map +1 -1
  145. package/es/components/roving-focus-group/index.mjs +3 -3
  146. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs +1 -1
  147. package/es/components/roving-focus-group/src/roving-focus-group.mjs +27 -29
  148. package/es/components/roving-focus-group/src/roving-focus-group.mjs.map +1 -1
  149. package/es/components/roving-focus-group/src/roving-focus-group2.mjs +29 -27
  150. package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -1
  151. package/es/components/roving-focus-group/src/roving-focus-item.mjs +1 -1
  152. package/es/components/scrollbar/index.mjs +2 -2
  153. package/es/components/scrollbar/src/scrollbar.mjs +47 -175
  154. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  155. package/es/components/scrollbar/src/scrollbar2.mjs +175 -47
  156. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  157. package/es/components/select/index.d.ts +12 -0
  158. package/es/components/select/src/option.mjs +9 -3
  159. package/es/components/select/src/option.mjs.map +1 -1
  160. package/es/components/select/src/option.vue.d.ts +7 -0
  161. package/es/components/select/src/select.mjs +12 -7
  162. package/es/components/select/src/select.mjs.map +1 -1
  163. package/es/components/select-v2/src/defaults.mjs +1 -1
  164. package/es/components/select-v2/src/select.mjs +1 -0
  165. package/es/components/select-v2/src/select.mjs.map +1 -1
  166. package/es/components/skeleton/index.mjs +2 -2
  167. package/es/components/skeleton/src/skeleton-item.mjs +18 -23
  168. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  169. package/es/components/skeleton/src/skeleton-item2.mjs +23 -18
  170. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  171. package/es/components/skeleton/src/skeleton2.mjs +1 -1
  172. package/es/components/slider/src/button.mjs +95 -21
  173. package/es/components/slider/src/button.mjs.map +1 -1
  174. package/es/components/slider/src/button2.mjs +21 -95
  175. package/es/components/slider/src/button2.mjs.map +1 -1
  176. package/es/components/slider/src/slider2.mjs +1 -1
  177. package/es/components/steps/index.mjs +2 -2
  178. package/es/components/steps/src/item.mjs +194 -20
  179. package/es/components/steps/src/item.mjs.map +1 -1
  180. package/es/components/steps/src/item2.mjs +20 -194
  181. package/es/components/steps/src/item2.mjs.map +1 -1
  182. package/es/components/switch/index.mjs +2 -2
  183. package/es/components/switch/src/switch.mjs +88 -240
  184. package/es/components/switch/src/switch.mjs.map +1 -1
  185. package/es/components/switch/src/switch2.mjs +240 -88
  186. package/es/components/switch/src/switch2.mjs.map +1 -1
  187. package/es/components/tabs/index.mjs +2 -2
  188. package/es/components/tabs/src/tab-pane.mjs +13 -73
  189. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  190. package/es/components/tabs/src/tab-pane2.mjs +73 -13
  191. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  192. package/es/components/tag/index.mjs +2 -2
  193. package/es/components/tag/src/tag.mjs +32 -96
  194. package/es/components/tag/src/tag.mjs.map +1 -1
  195. package/es/components/tag/src/tag2.mjs +96 -32
  196. package/es/components/tag/src/tag2.mjs.map +1 -1
  197. package/es/components/time-picker/src/common/picker.mjs +14 -1
  198. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  199. package/es/components/time-picker/src/common/picker.vue.d.ts +3 -0
  200. package/es/components/time-select/index.d.ts +36 -0
  201. package/es/components/time-select/index.mjs +1 -1
  202. package/es/components/time-select/src/time-select.mjs +48 -117
  203. package/es/components/time-select/src/time-select.mjs.map +1 -1
  204. package/es/components/time-select/src/time-select.vue.d.ts +18 -0
  205. package/es/components/time-select/src/time-select2.mjs +117 -48
  206. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  207. package/es/components/timeline/index.mjs +2 -2
  208. package/es/components/timeline/src/timeline-item.mjs +70 -42
  209. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  210. package/es/components/timeline/src/timeline-item2.mjs +42 -70
  211. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  212. package/es/components/tooltip/index.mjs +4 -4
  213. package/es/components/tooltip/src/content.mjs +39 -167
  214. package/es/components/tooltip/src/content.mjs.map +1 -1
  215. package/es/components/tooltip/src/content2.mjs +167 -39
  216. package/es/components/tooltip/src/content2.mjs.map +1 -1
  217. package/es/components/tooltip/src/tooltip.mjs +170 -35
  218. package/es/components/tooltip/src/tooltip.mjs.map +1 -1
  219. package/es/components/tooltip/src/tooltip2.mjs +35 -170
  220. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  221. package/es/components/tooltip/src/trigger.mjs +74 -16
  222. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  223. package/es/components/tooltip/src/trigger2.mjs +16 -74
  224. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  225. package/es/components/tooltip-v2/index.mjs +2 -2
  226. package/es/components/tooltip-v2/src/content.mjs +50 -113
  227. package/es/components/tooltip-v2/src/content.mjs.map +1 -1
  228. package/es/components/tooltip-v2/src/content2.mjs +113 -50
  229. package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
  230. package/es/components/tooltip-v2/src/root.mjs +81 -17
  231. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  232. package/es/components/tooltip-v2/src/root2.mjs +17 -81
  233. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  234. package/es/components/tooltip-v2/src/tooltip.mjs +2 -2
  235. package/es/components/tooltip-v2/src/tooltip2.mjs +4 -4
  236. package/es/components/transfer/index.mjs +2 -2
  237. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  238. package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
  239. package/es/components/transfer/src/transfer-panel.mjs +19 -131
  240. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  241. package/es/components/transfer/src/transfer-panel2.mjs +131 -19
  242. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  243. package/es/components/transfer/src/transfer.mjs +69 -159
  244. package/es/components/transfer/src/transfer.mjs.map +1 -1
  245. package/es/components/transfer/src/transfer2.mjs +159 -69
  246. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  247. package/es/components/tree/index.d.ts +12 -0
  248. package/es/components/tree/src/tree.mjs +7 -2
  249. package/es/components/tree/src/tree.mjs.map +1 -1
  250. package/es/components/tree/src/tree.vue.d.ts +7 -0
  251. package/es/components/tree-select/src/tree-select-option.d.ts +36 -0
  252. package/es/components/upload/index.mjs +3 -3
  253. package/es/components/upload/src/upload-content.mjs +33 -170
  254. package/es/components/upload/src/upload-content.mjs.map +1 -1
  255. package/es/components/upload/src/upload-content2.mjs +170 -33
  256. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  257. package/es/components/upload/src/upload-dragger.mjs +70 -11
  258. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  259. package/es/components/upload/src/upload-dragger2.mjs +11 -70
  260. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  261. package/es/components/upload/src/upload-list.mjs +26 -170
  262. package/es/components/upload/src/upload-list.mjs.map +1 -1
  263. package/es/components/upload/src/upload-list2.mjs +170 -26
  264. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  265. package/es/components/upload/src/upload2.mjs +2 -2
  266. package/es/index.mjs +35 -35
  267. package/lib/components/alert/index.js +2 -2
  268. package/lib/components/alert/src/alert.js +37 -95
  269. package/lib/components/alert/src/alert.js.map +1 -1
  270. package/lib/components/alert/src/alert2.js +95 -37
  271. package/lib/components/alert/src/alert2.js.map +1 -1
  272. package/lib/components/autocomplete/src/autocomplete.js +1 -1
  273. package/lib/components/backtop/index.js +2 -2
  274. package/lib/components/backtop/src/backtop.js +54 -22
  275. package/lib/components/backtop/src/backtop.js.map +1 -1
  276. package/lib/components/backtop/src/backtop2.js +22 -54
  277. package/lib/components/backtop/src/backtop2.js.map +1 -1
  278. package/lib/components/badge/index.js +2 -2
  279. package/lib/components/badge/src/badge.js +17 -55
  280. package/lib/components/badge/src/badge.js.map +1 -1
  281. package/lib/components/badge/src/badge2.js +55 -17
  282. package/lib/components/badge/src/badge2.js.map +1 -1
  283. package/lib/components/breadcrumb/index.js +2 -2
  284. package/lib/components/breadcrumb/src/breadcrumb.js +11 -37
  285. package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
  286. package/lib/components/breadcrumb/src/breadcrumb2.js +37 -11
  287. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  288. package/lib/components/calendar/index.js +2 -2
  289. package/lib/components/calendar/src/calendar.js +131 -19
  290. package/lib/components/calendar/src/calendar.js.map +1 -1
  291. package/lib/components/calendar/src/calendar2.js +19 -131
  292. package/lib/components/calendar/src/calendar2.js.map +1 -1
  293. package/lib/components/card/index.js +2 -2
  294. package/lib/components/card/src/card.js +35 -16
  295. package/lib/components/card/src/card.js.map +1 -1
  296. package/lib/components/card/src/card2.js +16 -35
  297. package/lib/components/card/src/card2.js.map +1 -1
  298. package/lib/components/cascader/src/index.js +2 -2
  299. package/lib/components/cascader-panel/src/index.js +1 -1
  300. package/lib/components/cascader-panel/src/menu.js +1 -1
  301. package/lib/components/cascader-panel/src/node.js +209 -116
  302. package/lib/components/cascader-panel/src/node.js.map +1 -1
  303. package/lib/components/cascader-panel/src/node2.js +116 -209
  304. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  305. package/lib/components/cascader-panel/src/store.js +1 -1
  306. package/lib/components/check-tag/index.js +2 -2
  307. package/lib/components/check-tag/src/check-tag.js +13 -30
  308. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  309. package/lib/components/check-tag/src/check-tag2.js +30 -13
  310. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  311. package/lib/components/collapse/index.js +2 -2
  312. package/lib/components/collapse/src/collapse.js +19 -30
  313. package/lib/components/collapse/src/collapse.js.map +1 -1
  314. package/lib/components/collapse/src/collapse2.js +30 -19
  315. package/lib/components/collapse/src/collapse2.js.map +1 -1
  316. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  317. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  318. package/lib/components/dropdown/src/dropdown.js +2 -2
  319. package/lib/components/dropdown/src/dropdown2.js +1 -1
  320. package/lib/components/form/index.js +2 -2
  321. package/lib/components/form/src/form-item.js +320 -44
  322. package/lib/components/form/src/form-item.js.map +1 -1
  323. package/lib/components/form/src/form-item2.js +44 -320
  324. package/lib/components/form/src/form-item2.js.map +1 -1
  325. package/lib/components/image/index.d.ts +2 -2
  326. package/lib/components/image/src/image.vue.d.ts +2 -2
  327. package/lib/components/image-viewer/index.d.ts +1 -1
  328. package/lib/components/image-viewer/src/image-viewer.vue.d.ts +1 -1
  329. package/lib/components/index.js +35 -35
  330. package/lib/components/input/index.js +2 -2
  331. package/lib/components/input/src/input.js +116 -441
  332. package/lib/components/input/src/input.js.map +1 -1
  333. package/lib/components/input/src/input2.js +441 -116
  334. package/lib/components/input/src/input2.js.map +1 -1
  335. package/lib/components/input-number/index.js +2 -2
  336. package/lib/components/input-number/src/input-number.js +321 -62
  337. package/lib/components/input-number/src/input-number.js.map +1 -1
  338. package/lib/components/input-number/src/input-number2.js +62 -321
  339. package/lib/components/input-number/src/input-number2.js.map +1 -1
  340. package/lib/components/message/index.js +1 -1
  341. package/lib/components/message/src/message.js +144 -87
  342. package/lib/components/message/src/message.js.map +1 -1
  343. package/lib/components/message/src/message2.js +87 -144
  344. package/lib/components/message/src/message2.js.map +1 -1
  345. package/lib/components/message/src/method.js +2 -2
  346. package/lib/components/notification/index.js +1 -1
  347. package/lib/components/notification/src/notification.js +144 -70
  348. package/lib/components/notification/src/notification.js.map +1 -1
  349. package/lib/components/notification/src/notification2.js +70 -144
  350. package/lib/components/notification/src/notification2.js.map +1 -1
  351. package/lib/components/notification/src/notify.js +2 -2
  352. package/lib/components/page-header/index.js +2 -2
  353. package/lib/components/page-header/src/page-header.js +102 -18
  354. package/lib/components/page-header/src/page-header.js.map +1 -1
  355. package/lib/components/page-header/src/page-header2.js +18 -102
  356. package/lib/components/page-header/src/page-header2.js.map +1 -1
  357. package/lib/components/pagination/src/components/jumper.js +60 -9
  358. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  359. package/lib/components/pagination/src/components/jumper2.js +9 -60
  360. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  361. package/lib/components/pagination/src/components/next.js +19 -34
  362. package/lib/components/pagination/src/components/next.js.map +1 -1
  363. package/lib/components/pagination/src/components/next2.js +34 -19
  364. package/lib/components/pagination/src/components/next2.js.map +1 -1
  365. package/lib/components/pagination/src/components/pager.js +17 -208
  366. package/lib/components/pagination/src/components/pager.js.map +1 -1
  367. package/lib/components/pagination/src/components/pager2.js +208 -17
  368. package/lib/components/pagination/src/components/pager2.js.map +1 -1
  369. package/lib/components/pagination/src/components/prev.js +19 -34
  370. package/lib/components/pagination/src/components/prev.js.map +1 -1
  371. package/lib/components/pagination/src/components/prev2.js +34 -19
  372. package/lib/components/pagination/src/components/prev2.js.map +1 -1
  373. package/lib/components/pagination/src/components/sizes.vue.d.ts +12 -0
  374. package/lib/components/pagination/src/components/total.js +7 -28
  375. package/lib/components/pagination/src/components/total.js.map +1 -1
  376. package/lib/components/pagination/src/components/total2.js +28 -7
  377. package/lib/components/pagination/src/components/total2.js.map +1 -1
  378. package/lib/components/pagination/src/pagination.js +5 -5
  379. package/lib/components/popconfirm/src/popconfirm.js +1 -1
  380. package/lib/components/popover/index.js +2 -2
  381. package/lib/components/popover/src/popover.js +111 -67
  382. package/lib/components/popover/src/popover.js.map +1 -1
  383. package/lib/components/popover/src/popover2.js +67 -111
  384. package/lib/components/popover/src/popover2.js.map +1 -1
  385. package/lib/components/popper/index.js +2 -2
  386. package/lib/components/popper/src/content.js +212 -99
  387. package/lib/components/popper/src/content.js.map +1 -1
  388. package/lib/components/popper/src/content2.js +99 -212
  389. package/lib/components/popper/src/content2.js.map +1 -1
  390. package/lib/components/progress/index.js +2 -2
  391. package/lib/components/progress/src/progress.js +202 -57
  392. package/lib/components/progress/src/progress.js.map +1 -1
  393. package/lib/components/progress/src/progress2.js +57 -202
  394. package/lib/components/progress/src/progress2.js.map +1 -1
  395. package/lib/components/radio/index.js +4 -4
  396. package/lib/components/radio/src/radio-button.js +68 -9
  397. package/lib/components/radio/src/radio-button.js.map +1 -1
  398. package/lib/components/radio/src/radio-button2.js +9 -68
  399. package/lib/components/radio/src/radio-button2.js.map +1 -1
  400. package/lib/components/radio/src/radio-group2.js +1 -1
  401. package/lib/components/radio/src/radio.js +78 -36
  402. package/lib/components/radio/src/radio.js.map +1 -1
  403. package/lib/components/radio/src/radio2.js +36 -78
  404. package/lib/components/radio/src/radio2.js.map +1 -1
  405. package/lib/components/result/index.js +2 -2
  406. package/lib/components/result/src/result.js +31 -63
  407. package/lib/components/result/src/result.js.map +1 -1
  408. package/lib/components/result/src/result2.js +63 -31
  409. package/lib/components/result/src/result2.js.map +1 -1
  410. package/lib/components/roving-focus-group/index.js +2 -2
  411. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js +1 -1
  412. package/lib/components/roving-focus-group/src/roving-focus-group.js +27 -33
  413. package/lib/components/roving-focus-group/src/roving-focus-group.js.map +1 -1
  414. package/lib/components/roving-focus-group/src/roving-focus-group2.js +33 -27
  415. package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -1
  416. package/lib/components/roving-focus-group/src/roving-focus-item.js +1 -1
  417. package/lib/components/scrollbar/index.js +2 -2
  418. package/lib/components/scrollbar/src/scrollbar.js +48 -175
  419. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  420. package/lib/components/scrollbar/src/scrollbar2.js +175 -48
  421. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  422. package/lib/components/select/index.d.ts +12 -0
  423. package/lib/components/select/src/option.js +8 -2
  424. package/lib/components/select/src/option.js.map +1 -1
  425. package/lib/components/select/src/option.vue.d.ts +7 -0
  426. package/lib/components/select/src/select.js +12 -7
  427. package/lib/components/select/src/select.js.map +1 -1
  428. package/lib/components/select-v2/src/defaults.js +1 -1
  429. package/lib/components/select-v2/src/select.js +1 -0
  430. package/lib/components/select-v2/src/select.js.map +1 -1
  431. package/lib/components/skeleton/index.js +2 -2
  432. package/lib/components/skeleton/src/skeleton-item.js +18 -23
  433. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  434. package/lib/components/skeleton/src/skeleton-item2.js +23 -18
  435. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  436. package/lib/components/skeleton/src/skeleton2.js +1 -1
  437. package/lib/components/slider/src/button.js +95 -22
  438. package/lib/components/slider/src/button.js.map +1 -1
  439. package/lib/components/slider/src/button2.js +22 -95
  440. package/lib/components/slider/src/button2.js.map +1 -1
  441. package/lib/components/slider/src/slider2.js +1 -1
  442. package/lib/components/steps/index.js +2 -2
  443. package/lib/components/steps/src/item.js +194 -20
  444. package/lib/components/steps/src/item.js.map +1 -1
  445. package/lib/components/steps/src/item2.js +20 -194
  446. package/lib/components/steps/src/item2.js.map +1 -1
  447. package/lib/components/switch/index.js +2 -2
  448. package/lib/components/switch/src/switch.js +88 -239
  449. package/lib/components/switch/src/switch.js.map +1 -1
  450. package/lib/components/switch/src/switch2.js +239 -88
  451. package/lib/components/switch/src/switch2.js.map +1 -1
  452. package/lib/components/tabs/index.js +2 -2
  453. package/lib/components/tabs/src/tab-pane.js +13 -73
  454. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  455. package/lib/components/tabs/src/tab-pane2.js +73 -13
  456. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  457. package/lib/components/tag/index.js +2 -2
  458. package/lib/components/tag/src/tag.js +33 -96
  459. package/lib/components/tag/src/tag.js.map +1 -1
  460. package/lib/components/tag/src/tag2.js +96 -33
  461. package/lib/components/tag/src/tag2.js.map +1 -1
  462. package/lib/components/time-picker/src/common/picker.js +14 -1
  463. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  464. package/lib/components/time-picker/src/common/picker.vue.d.ts +3 -0
  465. package/lib/components/time-select/index.d.ts +36 -0
  466. package/lib/components/time-select/index.js +1 -1
  467. package/lib/components/time-select/src/time-select.js +48 -122
  468. package/lib/components/time-select/src/time-select.js.map +1 -1
  469. package/lib/components/time-select/src/time-select.vue.d.ts +18 -0
  470. package/lib/components/time-select/src/time-select2.js +122 -48
  471. package/lib/components/time-select/src/time-select2.js.map +1 -1
  472. package/lib/components/timeline/index.js +2 -2
  473. package/lib/components/timeline/src/timeline-item.js +70 -42
  474. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  475. package/lib/components/timeline/src/timeline-item2.js +42 -70
  476. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  477. package/lib/components/tooltip/index.js +4 -4
  478. package/lib/components/tooltip/src/content.js +39 -167
  479. package/lib/components/tooltip/src/content.js.map +1 -1
  480. package/lib/components/tooltip/src/content2.js +167 -39
  481. package/lib/components/tooltip/src/content2.js.map +1 -1
  482. package/lib/components/tooltip/src/tooltip.js +169 -38
  483. package/lib/components/tooltip/src/tooltip.js.map +1 -1
  484. package/lib/components/tooltip/src/tooltip2.js +38 -169
  485. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  486. package/lib/components/tooltip/src/trigger.js +74 -16
  487. package/lib/components/tooltip/src/trigger.js.map +1 -1
  488. package/lib/components/tooltip/src/trigger2.js +16 -74
  489. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  490. package/lib/components/tooltip-v2/index.js +2 -2
  491. package/lib/components/tooltip-v2/src/content.js +50 -113
  492. package/lib/components/tooltip-v2/src/content.js.map +1 -1
  493. package/lib/components/tooltip-v2/src/content2.js +113 -50
  494. package/lib/components/tooltip-v2/src/content2.js.map +1 -1
  495. package/lib/components/tooltip-v2/src/root.js +81 -17
  496. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  497. package/lib/components/tooltip-v2/src/root2.js +17 -81
  498. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  499. package/lib/components/tooltip-v2/src/tooltip.js +2 -2
  500. package/lib/components/tooltip-v2/src/tooltip2.js +4 -4
  501. package/lib/components/transfer/index.js +2 -2
  502. package/lib/components/transfer/src/composables/use-check.js +1 -1
  503. package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
  504. package/lib/components/transfer/src/transfer-panel.js +21 -131
  505. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  506. package/lib/components/transfer/src/transfer-panel2.js +131 -21
  507. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  508. package/lib/components/transfer/src/transfer.js +73 -159
  509. package/lib/components/transfer/src/transfer.js.map +1 -1
  510. package/lib/components/transfer/src/transfer2.js +159 -73
  511. package/lib/components/transfer/src/transfer2.js.map +1 -1
  512. package/lib/components/tree/index.d.ts +12 -0
  513. package/lib/components/tree/src/tree.js +6 -1
  514. package/lib/components/tree/src/tree.js.map +1 -1
  515. package/lib/components/tree/src/tree.vue.d.ts +7 -0
  516. package/lib/components/tree-select/src/tree-select-option.d.ts +36 -0
  517. package/lib/components/upload/index.js +3 -3
  518. package/lib/components/upload/src/upload-content.js +32 -169
  519. package/lib/components/upload/src/upload-content.js.map +1 -1
  520. package/lib/components/upload/src/upload-content2.js +169 -32
  521. package/lib/components/upload/src/upload-content2.js.map +1 -1
  522. package/lib/components/upload/src/upload-dragger.js +70 -12
  523. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  524. package/lib/components/upload/src/upload-dragger2.js +12 -70
  525. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  526. package/lib/components/upload/src/upload-list.js +27 -170
  527. package/lib/components/upload/src/upload-list.js.map +1 -1
  528. package/lib/components/upload/src/upload-list2.js +170 -27
  529. package/lib/components/upload/src/upload-list2.js.map +1 -1
  530. package/lib/components/upload/src/upload2.js +2 -2
  531. package/lib/index.js +35 -35
  532. package/package.json +1 -1
  533. package/theme-chalk/el-select-dropdown.css +1 -1
  534. package/theme-chalk/el-select.css +1 -1
  535. package/theme-chalk/el-tag.css +1 -1
  536. package/theme-chalk/index.css +1 -1
  537. package/theme-chalk/src/select-dropdown.scss +4 -4
  538. package/theme-chalk/src/select.scss +8 -0
  539. package/theme-chalk/src/tag.scss +4 -0
@@ -1 +1 @@
1
- {"version":3,"file":"input2.mjs","sources":["../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import { isString } from '@vue/shared'\nimport {\n buildProps,\n definePropType,\n iconPropType,\n mutable,\n} from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useSizeProp } from '@element-plus/hooks'\nimport type Input from './input.vue'\nimport type { ExtractPropTypes, StyleValue } from 'vue'\n\nexport type InputAutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const inputProps = buildProps({\n /**\n * @description native input id\n */\n id: {\n type: String,\n default: undefined,\n },\n /**\n * @description input box size\n */\n size: useSizeProp,\n /**\n * @description whether to disable\n */\n disabled: Boolean,\n /**\n * @description binding value\n */\n modelValue: {\n type: definePropType<string | number | null | undefined>([\n String,\n Number,\n Object,\n ]),\n default: '',\n },\n /**\n * @description type of input\n */\n type: {\n type: String,\n default: 'text',\n },\n effect: {\n type: String,\n values: ['dark', 'light', 'plain'],\n default: 'light',\n },\n /**\n * @description control the resizability\n */\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n /**\n * @description whether textarea has an adaptive height\n */\n autosize: {\n type: definePropType<InputAutoSize>([Boolean, Object]),\n default: false,\n },\n /**\n * @description native input autocomplete\n */\n autocomplete: {\n type: String,\n default: 'off',\n },\n /**\n * @description format content\n */\n formatter: {\n type: Function,\n },\n /**\n * @description parse content\n */\n parser: {\n type: Function,\n },\n /**\n * @description placeholder\n */\n placeholder: {\n type: String,\n },\n /**\n * @description native input form\n */\n form: {\n type: String,\n },\n /**\n * @description native input readonly\n */\n readonly: {\n type: Boolean,\n default: false,\n },\n /**\n * @description native input readonly\n */\n clearable: {\n type: Boolean,\n default: false,\n },\n /**\n * @description toggleable password input\n */\n showPassword: {\n type: Boolean,\n default: false,\n },\n /**\n * @description word count\n */\n showWordLimit: {\n type: Boolean,\n default: false,\n },\n /**\n * @description suffix icon\n */\n suffixIcon: {\n type: iconPropType,\n },\n /**\n * @description prefix icon\n */\n prefixIcon: {\n type: iconPropType,\n },\n iconViewCustom: {\n type: iconPropType,\n },\n iconHideCustom: {\n type: iconPropType,\n },\n /**\n * @description container role, internal properties provided for use by the picker component\n */\n containerRole: {\n type: String,\n default: undefined,\n },\n /**\n * @description native input aria-label\n */\n label: {\n type: String,\n default: undefined,\n },\n /**\n * @description input tabindex\n */\n tabindex: {\n type: [String, Number],\n default: 0,\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description input or texearea element style\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 // NOTE: when autofill by browser, the keydown event is instanceof Event, not KeyboardEvent\n // relative bug report https://github.com/element-plus/element-plus/issues/6665\n keydown: (evt: KeyboardEvent | Event) => evt instanceof Event,\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\nexport type InputInstance = InstanceType<typeof Input>\n"],"names":[],"mappings":";;;;;;;;;;AASY,MAAC,UAAU,GAAG,UAAU,CAAC;AACrC,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,cAAc,CAAC;AACzB,MAAM,MAAM;AACZ,MAAM,MAAM;AACZ,MAAM,MAAM;AACZ,KAAK,CAAC;AACN,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;AACtC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC;AACtD,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC3C,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACjD,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,CAAC,kBAAkB,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC;AAClD,EAAE,KAAK,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC;AACnC,EAAE,MAAM,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC;AACpC,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC1C,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB,EAAE,UAAU,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAChD,EAAE,UAAU,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAChD,EAAE,OAAO,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,KAAK;AACxC,EAAE,gBAAgB,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,gBAAgB;AAC5D,EAAE,iBAAiB,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,gBAAgB;AAC7D,EAAE,cAAc,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,gBAAgB;AAC1D;;;;"}
1
+ {"version":3,"file":"input2.mjs","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n v-bind=\"containerAttrs\"\n :class=\"[\n type === 'textarea' ? nsTextarea.b() : nsInput.b(),\n nsInput.m(inputSize),\n nsInput.m(effect),\n nsInput.is('disabled', inputDisabled),\n nsInput.is('exceed', inputExceed),\n {\n [nsInput.b('group')]: $slots.prepend || $slots.append,\n [nsInput.bm('group', 'append')]: $slots.append,\n [nsInput.bm('group', 'prepend')]: $slots.prepend,\n [nsInput.m('prefix')]: $slots.prefix || prefixIcon,\n [nsInput.m('suffix')]:\n $slots.suffix || suffixIcon || clearable || showPassword,\n [nsInput.bm('suffix', 'password-clear')]: showClear && showPwdVisible,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n :role=\"containerRole\"\n @mouseenter=\"handleMouseEnter\"\n @mouseleave=\"handleMouseLeave\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" :class=\"nsInput.be('group', 'prepend')\">\n <slot name=\"prepend\" />\n </div>\n\n <div :style=\"[formatterStyle(customStyle, ['background']), customStyle.border && { boxShadow: `0 0 0 1px ${customStyle.border} inset`}]\" :class=\"[nsInput.e('wrapper'), nsInput.is('focus', focused)]\">\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" :class=\"nsInput.e('prefix')\">\n <span :class=\"nsInput.e('prefix-inner')\">\n <slot name=\"prefix\" />\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </span>\n </span>\n\n <input\n :id=\"inputId\"\n ref=\"input\"\n :class=\"[nsInput.e('inner'), { 'placeholderColor': placeholderColor }]\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :formatter=\"formatter\"\n :parser=\"parser\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"[inputStyle, formatterStyle(customStyle, ['text'])]\"\n :form=\"props.form\"\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 <!-- suffix slot -->\n <span v-if=\"suffixVisible\" :class=\"nsInput.e('suffix')\">\n <span :class=\"nsInput.e('suffix-inner')\">\n <template\n v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\"\n >\n <slot name=\"suffix\" />\n <el-icon v-if=\"suffixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"suffixIcon\" />\n </el-icon>\n </template>\n <el-icon\n v-if=\"showClear\"\n :class=\"[nsInput.e('icon'), nsInput.e('clear')]\"\n @mousedown.prevent=\"NOOP\"\n @click=\"clear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-if=\"showPwdVisible\"\n :class=\"[nsInput.e('icon'), nsInput.e('password')]\"\n @click=\"handlePasswordVisible\"\n >\n <component :is=\"passwordIcon\" />\n </el-icon>\n <span v-if=\"isWordLimitVisible\" :class=\"nsInput.e('count')\">\n <span :class=\"nsInput.e('count-inner')\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </span>\n </span>\n </div>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" :class=\"nsInput.be('group', 'append')\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n :id=\"inputId\"\n ref=\"textarea\"\n :class=\"nsTextarea.e('inner')\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"textareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :form=\"props.form\"\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\n v-if=\"isWordLimitVisible\"\n :style=\"countStyle\"\n :class=\"nsInput.e('count')\"\n >\n <span v-if=\"textLength\" :style=\"{ color: '#1F2329'}\">{{ textLength }}</span><template v-else>{{ textLength }}</template>/{{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n ref,\n shallowRef,\n toRef,\n useAttrs as useRawAttrs,\n useSlots,\n inject,\n watch,\n} from 'vue'\nimport { formatterStyle } from '@element-plus/utils'\nimport type { CustomStyle } from '@element-plus/utils'\nimport { isClient, useResizeObserver } from '@vueuse/core'\nimport { isNil } from 'lodash-unified'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n CircleClose,\n Hide as IconHide,\n View as IconView,\n} from '@element-plus/icons-vue'\nimport {\n NOOP,\n ValidateComponentsMap,\n debugWarn,\n isKorean,\n isObject,\n} from '@element-plus/utils'\nimport {\n useAttrs,\n useCursor,\n useDisabled,\n useFormItem,\n useFormItemInputId,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { calcTextareaHeight } from './utils'\nimport { inputEmits, inputProps } from './input'\nimport type { StyleValue } from 'vue'\n\ntype TargetElement = HTMLInputElement | HTMLTextAreaElement\n\ndefineOptions({\n name: 'ElInput',\n inheritAttrs: false,\n})\nconst props = defineProps(inputProps)\nconst emit = defineEmits(inputEmits)\n\nconst rawAttrs = useRawAttrs()\nconst slots = useSlots()\n\nconst containerAttrs = computed(() => {\n const comboBoxAttrs: Record<string, unknown> = {}\n if (props.containerRole === 'combobox') {\n comboBoxAttrs['aria-haspopup'] = rawAttrs['aria-haspopup']\n comboBoxAttrs['aria-owns'] = rawAttrs['aria-owns']\n comboBoxAttrs['aria-expanded'] = rawAttrs['aria-expanded']\n }\n return comboBoxAttrs\n})\nconst customStyle = inject('$custom-style-filter', {}) as CustomStyle\nconst placeholderColor = computed(() => {\n return customStyle.text\n})\n\nconst attrs = useAttrs({\n excludeKeys: computed<string[]>(() => {\n return Object.keys(containerAttrs.value)\n }),\n})\nconst { form, formItem } = useFormItem()\nconst { inputId } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\nconst inputSize = useSize()\nconst inputDisabled = useDisabled()\nconst nsInput = useNamespace('input')\nconst nsTextarea = useNamespace('textarea')\n\nconst input = shallowRef<HTMLInputElement>()\nconst textarea = shallowRef<HTMLTextAreaElement>()\n\nconst focused = ref(false)\nconst hovering = ref(false)\nconst isComposing = ref(false)\nconst passwordVisible = ref(false)\nconst countStyle = ref<StyleValue>()\nconst textareaCalcStyle = shallowRef(props.inputStyle)\n\nconst _ref = computed(() => input.value || textarea.value)\n\nconst needStatusIcon = computed(() => form?.statusIcon ?? false)\nconst validateState = computed(() => formItem?.validateState || '')\nconst validateIcon = computed(\n () => validateState.value && ValidateComponentsMap[validateState.value]\n)\nconst passwordIcon = computed(() =>\n passwordVisible.value ? (props.iconViewCustom || IconView) : (props.iconHideCustom || IconHide)\n)\nconst containerStyle = computed<StyleValue>(() => [\n rawAttrs.style as StyleValue,\n props.inputStyle,\n])\nconst textareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n textareaCalcStyle.value,\n { resize: props.resize },\n])\nconst nativeInputValue = computed(() =>\n isNil(props.modelValue) ? '' : String(props.modelValue)\n)\nconst showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n)\nconst showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (!!nativeInputValue.value || focused.value)\n)\nconst 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)\nconst textLength = computed(() => Array.from(nativeInputValue.value).length)\nconst 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)\nconst 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\nconst [recordCursor, setCursor] = useCursor(input)\n\nuseResizeObserver(textarea, (entries) => {\n if (!isWordLimitVisible.value || props.resize !== 'both') return\n const entry = entries[0]\n const { width } = entry.contentRect\n countStyle.value = {\n /** right: 100% - width + padding(15) + right(6) */\n right: `calc(100% - ${width + 15 + 6}px)`,\n }\n})\n\nconst resizeTextarea = () => {\n const { type, autosize } = props\n\n if (!isClient || 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\nconst setNativeInputValue = () => {\n const input = _ref.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n}\n\nconst handleInput = async (event: Event) => {\n recordCursor()\n\n let { value } = event.target as TargetElement\n\n if (props.formatter) {\n value = props.parser ? props.parser(value) : value\n value = props.formatter(value)\n }\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) {\n setNativeInputValue()\n return\n }\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 await nextTick()\n setNativeInputValue()\n setCursor()\n}\n\nconst handleChange = (event: Event) => {\n emit('change', (event.target as TargetElement).value)\n}\n\nconst handleCompositionStart = (event: CompositionEvent) => {\n emit('compositionstart', event)\n isComposing.value = true\n}\n\nconst 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\nconst handleCompositionEnd = (event: CompositionEvent) => {\n emit('compositionend', event)\n if (isComposing.value) {\n isComposing.value = false\n handleInput(event)\n }\n}\n\nconst handlePasswordVisible = () => {\n passwordVisible.value = !passwordVisible.value\n focus()\n}\n\nconst focus = async () => {\n // see: https://github.com/ElemeFE/element/issues/18573\n await nextTick()\n _ref.value?.focus()\n}\n\nconst blur = () => _ref.value?.blur()\n\nconst handleFocus = (event: FocusEvent) => {\n focused.value = true\n emit('focus', event)\n}\n\nconst handleBlur = (event: FocusEvent) => {\n focused.value = false\n emit('blur', event)\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n}\n\nconst handleMouseLeave = (evt: MouseEvent) => {\n hovering.value = false\n emit('mouseleave', evt)\n}\n\nconst handleMouseEnter = (evt: MouseEvent) => {\n hovering.value = true\n emit('mouseenter', evt)\n}\n\nconst handleKeydown = (evt: KeyboardEvent) => {\n emit('keydown', evt)\n}\n\nconst select = () => {\n _ref.value?.select()\n}\n\nconst clear = () => {\n emit(UPDATE_MODEL_EVENT, '')\n emit('change', '')\n emit('clear')\n emit('input', '')\n}\n\nwatch(\n () => props.modelValue,\n () => {\n nextTick(() => resizeTextarea())\n if (props.validateEvent) {\n formItem?.validate?.('change').catch((err) => debugWarn(err))\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\nwatch(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\nwatch(\n () => props.type,\n async () => {\n await nextTick()\n setNativeInputValue()\n resizeTextarea()\n }\n)\n\nonMounted(() => {\n if (!props.formatter && props.parser) {\n debugWarn(\n 'ElInput',\n 'If you set the parser, you also need to set the formatter.'\n )\n }\n setNativeInputValue()\n nextTick(resizeTextarea)\n})\n\ndefineExpose({\n /** @description HTML input element */\n input,\n /** @description HTML textarea element */\n textarea,\n /** @description HTML element, input or textarea */\n ref: _ref,\n /** @description style of textarea. */\n textareaStyle,\n\n /** @description from props (used on unit test) */\n autosize: toRef(props, 'autosize'),\n\n /** @description HTML input element native method */\n focus,\n /** @description HTML input element native method */\n blur,\n /** @description HTML input element native method */\n select,\n /** @description clear input value */\n clear,\n /** @description resize textarea. */\n resizeTextarea,\n})\n</script>"],"names":["useRawAttrs","useAttrs","IconView","IconHide"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import '../../utils/index.mjs';
2
- import InputNumber from './src/input-number2.mjs';
3
- export { inputNumberEmits, inputNumberProps } from './src/input-number.mjs';
2
+ import InputNumber from './src/input-number.mjs';
3
+ export { inputNumberEmits, inputNumberProps } from './src/input-number2.mjs';
4
4
  import { withInstall } from '../../utils/vue/install.mjs';
5
5
 
6
6
  const ElInputNumber = withInstall(InputNumber);
@@ -1,72 +1,332 @@
1
+ import { createElementVNode, defineComponent, ref, reactive, computed, watch, onMounted, onUpdated, openBlock, createElementBlock, normalizeClass, unref, withModifiers, withDirectives, withKeys, createVNode, withCtx, createBlock, createCommentVNode } from 'vue';
1
2
  import { isNil } from 'lodash-unified';
3
+ import { ElInput } from '../../input/index.mjs';
4
+ import { ElIcon } from '../../icon/index.mjs';
5
+ import '../../../directives/index.mjs';
2
6
  import '../../../hooks/index.mjs';
3
7
  import '../../../utils/index.mjs';
8
+ import { Minus, Plus } from '@element-plus/icons-vue';
4
9
  import '../../../constants/index.mjs';
5
- import { buildProps } from '../../../utils/vue/props/runtime.mjs';
6
- import { useSizeProp } from '../../../hooks/use-size/index.mjs';
10
+ import { inputNumberProps, inputNumberEmits } from './input-number2.mjs';
11
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
12
+ import { useLocale } from '../../../hooks/use-locale/index.mjs';
13
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
14
+ import { useFormItem } from '../../../hooks/use-form-item/index.mjs';
7
15
  import { isNumber } from '@vueuse/core';
8
- import { CHANGE_EVENT, INPUT_EVENT, UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
16
+ import { isUndefined } from '../../../utils/types.mjs';
17
+ import { debugWarn } from '../../../utils/error.mjs';
18
+ import { useSize, useDisabled } from '../../../hooks/use-common-props/index.mjs';
19
+ import { INPUT_EVENT, UPDATE_MODEL_EVENT, CHANGE_EVENT } from '../../../constants/event.mjs';
20
+ import { isString } from '@vue/shared';
21
+ import { vRepeatClick } from '../../../directives/repeat-click/index.mjs';
9
22
 
10
- const inputNumberProps = buildProps({
11
- id: {
12
- type: String,
13
- default: void 0
14
- },
15
- step: {
16
- type: Number,
17
- default: 1
18
- },
19
- stepStrictly: Boolean,
20
- max: {
21
- type: Number,
22
- default: Number.POSITIVE_INFINITY
23
- },
24
- effect: {
25
- type: String,
26
- values: ["dark", "light", "plain"],
27
- default: "light"
28
- },
29
- min: {
30
- type: Number,
31
- default: Number.NEGATIVE_INFINITY
32
- },
33
- modelValue: Number,
34
- readonly: Boolean,
35
- disabled: Boolean,
36
- size: useSizeProp,
37
- controls: {
38
- type: Boolean,
39
- default: true
40
- },
41
- controlsPosition: {
42
- type: String,
43
- default: "",
44
- values: ["", "right"]
45
- },
46
- valueOnClear: {
47
- type: [String, Number, null],
48
- validator: (val) => val === null || isNumber(val) || ["min", "max"].includes(val),
49
- default: null
50
- },
51
- name: String,
52
- label: String,
53
- placeholder: String,
54
- precision: {
55
- type: Number,
56
- validator: (val) => val >= 0 && val === Number.parseInt(`${val}`, 10)
57
- },
58
- validateEvent: {
59
- type: Boolean,
60
- default: true
23
+ const _hoisted_1 = ["aria-label", "onKeydown"];
24
+ const _hoisted_2 = {
25
+ key: 0,
26
+ xmlns: "http://www.w3.org/2000/svg",
27
+ width: "12",
28
+ height: "12",
29
+ viewBox: "0 0 12 12"
30
+ };
31
+ const _hoisted_3 = /* @__PURE__ */ createElementVNode("path", { d: "M5.99952 7.93206L10.0654 3.86619C10.163 3.76856 10.3213 3.76856 10.4189 3.86619L10.7725 4.21975C10.8701 4.31738 10.8701 4.47567 10.7725 4.5733L6.35307 8.99272C6.15781 9.18798 5.84122 9.18798 5.64596 8.99272L1.22654 4.5733C1.12891 4.47567 1.12891 4.31738 1.22654 4.21975L1.5801 3.86619C1.67773 3.76856 1.83602 3.76856 1.93365 3.86619L5.99952 7.93206Z" }, null, -1);
32
+ const _hoisted_4 = [
33
+ _hoisted_3
34
+ ];
35
+ const _hoisted_5 = ["aria-label", "onKeydown"];
36
+ const _hoisted_6 = {
37
+ key: 0,
38
+ xmlns: "http://www.w3.org/2000/svg",
39
+ width: "12",
40
+ height: "12",
41
+ viewBox: "0 0 12 12"
42
+ };
43
+ const _hoisted_7 = /* @__PURE__ */ createElementVNode("path", { d: "M6.00048 4.06794L1.93462 8.13381C1.83699 8.23144 1.6787 8.23144 1.58107 8.13381L1.22751 7.78025C1.12988 7.68262 1.12988 7.52433 1.22751 7.4267L5.64693 3.00728C5.84219 2.81202 6.15878 2.81202 6.35404 3.00728L10.7735 7.4267C10.8711 7.52433 10.8711 7.68262 10.7735 7.78025L10.4199 8.13381C10.3223 8.23144 10.164 8.23144 10.0663 8.13381L6.00048 4.06794Z" }, null, -1);
44
+ const _hoisted_8 = [
45
+ _hoisted_7
46
+ ];
47
+ const __default__ = defineComponent({
48
+ name: "ElInputNumber"
49
+ });
50
+ const _sfc_main = /* @__PURE__ */ defineComponent({
51
+ ...__default__,
52
+ props: inputNumberProps,
53
+ emits: inputNumberEmits,
54
+ setup(__props, { expose, emit }) {
55
+ const props = __props;
56
+ const { t } = useLocale();
57
+ const ns = useNamespace("input-number");
58
+ const input = ref();
59
+ const data = reactive({
60
+ currentValue: props.modelValue,
61
+ userInput: null
62
+ });
63
+ const { formItem } = useFormItem();
64
+ const minDisabled = computed(() => isNumber(props.modelValue) && ensurePrecision(props.modelValue, -1) < props.min);
65
+ const maxDisabled = computed(() => isNumber(props.modelValue) && ensurePrecision(props.modelValue) > props.max);
66
+ const numPrecision = computed(() => {
67
+ const stepPrecision = getPrecision(props.step);
68
+ if (!isUndefined(props.precision)) {
69
+ if (stepPrecision > props.precision) {
70
+ debugWarn("InputNumber", "precision should not be less than the decimal places of step");
71
+ }
72
+ return props.precision;
73
+ } else {
74
+ return Math.max(getPrecision(props.modelValue), stepPrecision);
75
+ }
76
+ });
77
+ const controlsAtRight = computed(() => {
78
+ return props.controls && props.controlsPosition === "right";
79
+ });
80
+ const inputNumberSize = useSize();
81
+ const inputNumberDisabled = useDisabled();
82
+ const displayValue = computed(() => {
83
+ if (data.userInput !== null) {
84
+ return data.userInput;
85
+ }
86
+ let currentValue = data.currentValue;
87
+ if (isNil(currentValue))
88
+ return "";
89
+ if (isNumber(currentValue)) {
90
+ if (Number.isNaN(currentValue))
91
+ return "";
92
+ if (!isUndefined(props.precision)) {
93
+ currentValue = currentValue.toFixed(props.precision);
94
+ }
95
+ }
96
+ return currentValue;
97
+ });
98
+ const toPrecision = (num, pre) => {
99
+ if (isUndefined(pre))
100
+ pre = numPrecision.value;
101
+ if (pre === 0)
102
+ return Math.round(num);
103
+ let snum = String(num);
104
+ const pointPos = snum.indexOf(".");
105
+ if (pointPos === -1)
106
+ return num;
107
+ const nums = snum.replace(".", "").split("");
108
+ const datum = nums[pointPos + pre];
109
+ if (!datum)
110
+ return num;
111
+ const length = snum.length;
112
+ if (snum.charAt(length - 1) === "5") {
113
+ snum = `${snum.slice(0, Math.max(0, length - 1))}6`;
114
+ }
115
+ return Number.parseFloat(Number(snum).toFixed(pre));
116
+ };
117
+ const getPrecision = (value) => {
118
+ if (isNil(value))
119
+ return 0;
120
+ const valueString = value.toString();
121
+ const dotPosition = valueString.indexOf(".");
122
+ let precision = 0;
123
+ if (dotPosition !== -1) {
124
+ precision = valueString.length - dotPosition - 1;
125
+ }
126
+ return precision;
127
+ };
128
+ const ensurePrecision = (val, coefficient = 1) => {
129
+ if (!isNumber(val))
130
+ return data.currentValue;
131
+ return toPrecision(val + props.step * coefficient);
132
+ };
133
+ const increase = () => {
134
+ if (props.readonly || inputNumberDisabled.value || maxDisabled.value)
135
+ return;
136
+ const value = Number(displayValue.value) || 0;
137
+ const newVal = ensurePrecision(value);
138
+ setCurrentValue(newVal);
139
+ emit(INPUT_EVENT, data.currentValue);
140
+ };
141
+ const decrease = () => {
142
+ if (props.readonly || inputNumberDisabled.value || minDisabled.value)
143
+ return;
144
+ const value = Number(displayValue.value) || 0;
145
+ const newVal = ensurePrecision(value, -1);
146
+ setCurrentValue(newVal);
147
+ emit(INPUT_EVENT, data.currentValue);
148
+ };
149
+ const verifyValue = (value, update) => {
150
+ const { max, min, step, precision, stepStrictly, valueOnClear } = props;
151
+ let newVal = Number(value);
152
+ if (isNil(value) || Number.isNaN(newVal)) {
153
+ return null;
154
+ }
155
+ if (value === "") {
156
+ if (valueOnClear === null) {
157
+ return null;
158
+ }
159
+ newVal = isString(valueOnClear) ? { min, max }[valueOnClear] : valueOnClear;
160
+ }
161
+ if (stepStrictly) {
162
+ newVal = toPrecision(Math.round(newVal / step) * step, precision);
163
+ }
164
+ if (!isUndefined(precision)) {
165
+ newVal = toPrecision(newVal, precision);
166
+ }
167
+ if (newVal > max || newVal < min) {
168
+ newVal = newVal > max ? max : min;
169
+ update && emit(UPDATE_MODEL_EVENT, newVal);
170
+ }
171
+ return newVal;
172
+ };
173
+ const setCurrentValue = (value) => {
174
+ var _a;
175
+ const oldVal = data.currentValue;
176
+ const newVal = verifyValue(value);
177
+ if (oldVal === newVal)
178
+ return;
179
+ data.userInput = null;
180
+ emit(UPDATE_MODEL_EVENT, newVal);
181
+ emit(CHANGE_EVENT, newVal, oldVal);
182
+ if (props.validateEvent) {
183
+ (_a = formItem == null ? void 0 : formItem.validate) == null ? void 0 : _a.call(formItem, "change").catch((err) => debugWarn(err));
184
+ }
185
+ data.currentValue = newVal;
186
+ };
187
+ const handleInput = (value) => {
188
+ data.userInput = value;
189
+ emit(INPUT_EVENT, value === "" ? null : Number(value));
190
+ };
191
+ const handleInputChange = (value) => {
192
+ const newVal = value !== "" ? Number(value) : "";
193
+ if (isNumber(newVal) && !Number.isNaN(newVal) || value === "") {
194
+ setCurrentValue(newVal);
195
+ }
196
+ data.userInput = null;
197
+ };
198
+ const focus = () => {
199
+ var _a, _b;
200
+ (_b = (_a = input.value) == null ? void 0 : _a.focus) == null ? void 0 : _b.call(_a);
201
+ };
202
+ const blur = () => {
203
+ var _a, _b;
204
+ (_b = (_a = input.value) == null ? void 0 : _a.blur) == null ? void 0 : _b.call(_a);
205
+ };
206
+ const handleFocus = (event) => {
207
+ emit("focus", event);
208
+ };
209
+ const handleBlur = (event) => {
210
+ var _a;
211
+ emit("blur", event);
212
+ if (props.validateEvent) {
213
+ (_a = formItem == null ? void 0 : formItem.validate) == null ? void 0 : _a.call(formItem, "blur").catch((err) => debugWarn(err));
214
+ }
215
+ };
216
+ watch(() => props.modelValue, (value) => {
217
+ data.currentValue = verifyValue(value, true);
218
+ data.userInput = null;
219
+ }, { immediate: true });
220
+ onMounted(() => {
221
+ var _a;
222
+ const { min, max, modelValue } = props;
223
+ const innerInput = (_a = input.value) == null ? void 0 : _a.input;
224
+ innerInput.setAttribute("role", "spinbutton");
225
+ if (Number.isFinite(max)) {
226
+ innerInput.setAttribute("aria-valuemax", String(max));
227
+ } else {
228
+ innerInput.removeAttribute("aria-valuemax");
229
+ }
230
+ if (Number.isFinite(min)) {
231
+ innerInput.setAttribute("aria-valuemin", String(min));
232
+ } else {
233
+ innerInput.removeAttribute("aria-valuemin");
234
+ }
235
+ innerInput.setAttribute("aria-valuenow", String(data.currentValue));
236
+ innerInput.setAttribute("aria-disabled", String(inputNumberDisabled.value));
237
+ if (!isNumber(modelValue) && modelValue != null) {
238
+ let val = Number(modelValue);
239
+ if (Number.isNaN(val)) {
240
+ val = null;
241
+ }
242
+ emit(UPDATE_MODEL_EVENT, val);
243
+ }
244
+ });
245
+ onUpdated(() => {
246
+ var _a;
247
+ const innerInput = (_a = input.value) == null ? void 0 : _a.input;
248
+ innerInput == null ? void 0 : innerInput.setAttribute("aria-valuenow", `${data.currentValue}`);
249
+ });
250
+ expose({
251
+ focus,
252
+ blur
253
+ });
254
+ return (_ctx, _cache) => {
255
+ return openBlock(), createElementBlock("div", {
256
+ class: normalizeClass([
257
+ unref(ns).b(),
258
+ unref(ns).m(unref(inputNumberSize)),
259
+ unref(ns).m(_ctx.effect),
260
+ unref(ns).is("disabled", unref(inputNumberDisabled)),
261
+ unref(ns).is("without-controls", !_ctx.controls),
262
+ unref(ns).is("controls-right", unref(controlsAtRight))
263
+ ]),
264
+ onDragstart: _cache[0] || (_cache[0] = withModifiers(() => {
265
+ }, ["prevent"]))
266
+ }, [
267
+ _ctx.controls ? withDirectives((openBlock(), createElementBlock("span", {
268
+ key: 0,
269
+ role: "button",
270
+ "aria-label": unref(t)("el.inputNumber.decrease"),
271
+ class: normalizeClass([unref(ns).e("decrease"), unref(ns).is("disabled", unref(minDisabled))]),
272
+ onKeydown: withKeys(decrease, ["enter"])
273
+ }, [
274
+ createVNode(unref(ElIcon), null, {
275
+ default: withCtx(() => [
276
+ unref(controlsAtRight) ? (openBlock(), createElementBlock("svg", _hoisted_2, _hoisted_4)) : (openBlock(), createBlock(unref(Minus), { key: 1 }))
277
+ ]),
278
+ _: 1
279
+ })
280
+ ], 42, _hoisted_1)), [
281
+ [unref(vRepeatClick), decrease]
282
+ ]) : createCommentVNode("v-if", true),
283
+ _ctx.controls ? withDirectives((openBlock(), createElementBlock("span", {
284
+ key: 1,
285
+ role: "button",
286
+ "aria-label": unref(t)("el.inputNumber.increase"),
287
+ class: normalizeClass([unref(ns).e("increase"), unref(ns).is("disabled", unref(maxDisabled))]),
288
+ onKeydown: withKeys(increase, ["enter"])
289
+ }, [
290
+ createVNode(unref(ElIcon), null, {
291
+ default: withCtx(() => [
292
+ unref(controlsAtRight) ? (openBlock(), createElementBlock("svg", _hoisted_6, _hoisted_8)) : (openBlock(), createBlock(unref(Plus), { key: 1 }))
293
+ ]),
294
+ _: 1
295
+ })
296
+ ], 42, _hoisted_5)), [
297
+ [unref(vRepeatClick), increase]
298
+ ]) : createCommentVNode("v-if", true),
299
+ createVNode(unref(ElInput), {
300
+ id: _ctx.id,
301
+ ref_key: "input",
302
+ ref: input,
303
+ type: "number",
304
+ step: _ctx.step,
305
+ "model-value": unref(displayValue),
306
+ placeholder: _ctx.placeholder,
307
+ readonly: _ctx.readonly,
308
+ disabled: unref(inputNumberDisabled),
309
+ size: unref(inputNumberSize),
310
+ max: _ctx.max,
311
+ effect: _ctx.effect,
312
+ min: _ctx.min,
313
+ name: _ctx.name,
314
+ label: _ctx.label,
315
+ "validate-event": false,
316
+ onKeydown: [
317
+ withKeys(withModifiers(increase, ["prevent"]), ["up"]),
318
+ withKeys(withModifiers(decrease, ["prevent"]), ["down"])
319
+ ],
320
+ onBlur: handleBlur,
321
+ onFocus: handleFocus,
322
+ onInput: handleInput,
323
+ onChange: handleInputChange
324
+ }, null, 8, ["id", "step", "model-value", "placeholder", "readonly", "disabled", "size", "max", "effect", "min", "name", "label", "onKeydown"])
325
+ ], 34);
326
+ };
61
327
  }
62
328
  });
63
- const inputNumberEmits = {
64
- [CHANGE_EVENT]: (prev, cur) => prev !== cur,
65
- blur: (e) => e instanceof FocusEvent,
66
- focus: (e) => e instanceof FocusEvent,
67
- [INPUT_EVENT]: (val) => isNumber(val) || isNil(val),
68
- [UPDATE_MODEL_EVENT]: (val) => isNumber(val) || isNil(val)
69
- };
329
+ var InputNumber = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/Users/st/Desktop/vue/nxx-ui/packages/components/input-number/src/input-number.vue"]]);
70
330
 
71
- export { inputNumberEmits, inputNumberProps };
331
+ export { InputNumber as default };
72
332
  //# sourceMappingURL=input-number.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-number.mjs","sources":["../../../../../../packages/components/input-number/src/input-number.ts"],"sourcesContent":["import { isNil } from 'lodash-unified'\nimport { useSizeProp } from '@element-plus/hooks'\nimport { buildProps, isNumber } from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type InputNumber from './input-number.vue'\n\nexport const inputNumberProps = buildProps({\n id: {\n type: String,\n default: undefined,\n },\n step: {\n type: Number,\n default: 1,\n },\n stepStrictly: Boolean,\n max: {\n type: Number,\n default: Number.POSITIVE_INFINITY,\n },\n effect: {\n type: String,\n values: ['dark', 'light', 'plain'],\n default: 'light',\n },\n min: {\n type: Number,\n default: Number.NEGATIVE_INFINITY,\n },\n modelValue: Number,\n readonly: Boolean,\n disabled: Boolean,\n size: useSizeProp,\n controls: {\n type: Boolean,\n default: true,\n },\n controlsPosition: {\n type: String,\n default: '',\n values: ['', 'right'],\n },\n valueOnClear: {\n type: [String, Number, null],\n validator: (val: 'min' | 'max' | number | null) =>\n val === null || isNumber(val) || ['min', 'max'].includes(val),\n default: null,\n },\n name: String,\n label: String,\n placeholder: String,\n precision: {\n type: Number,\n validator: (val: number) =>\n val >= 0 && val === Number.parseInt(`${val}`, 10),\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type InputNumberProps = ExtractPropTypes<typeof inputNumberProps>\n\nexport const inputNumberEmits = {\n [CHANGE_EVENT]: (prev: number | undefined, cur: number | undefined) =>\n prev !== cur,\n blur: (e: FocusEvent) => e instanceof FocusEvent,\n focus: (e: FocusEvent) => e instanceof FocusEvent,\n [INPUT_EVENT]: (val: number | null | undefined) =>\n isNumber(val) || isNil(val),\n [UPDATE_MODEL_EVENT]: (val: number | undefined) =>\n isNumber(val) || isNil(val),\n}\nexport type InputNumberEmits = typeof inputNumberEmits\n\nexport type InputNumberInstance = InstanceType<typeof InputNumber>\n"],"names":[],"mappings":";;;;;;;;;AAQY,MAAC,gBAAgB,GAAG,UAAU,CAAC;AAC3C,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,YAAY,EAAE,OAAO;AACvB,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,MAAM,CAAC,iBAAiB;AACrC,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;AACtC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,MAAM,CAAC,iBAAiB;AACrC,GAAG;AACH,EAAE,UAAU,EAAE,MAAM;AACpB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC;AACzB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC;AAChC,IAAI,SAAS,EAAE,CAAC,GAAG,KAAK,GAAG,KAAK,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;AACrF,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,SAAS,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;AACzE,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,gBAAgB,GAAG;AAChC,EAAE,CAAC,YAAY,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,KAAK,GAAG;AAC7C,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,UAAU;AACtC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,UAAU;AACvC,EAAE,CAAC,WAAW,GAAG,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC;AACrD,EAAE,CAAC,kBAAkB,GAAG,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC;AAC5D;;;;"}
1
+ {"version":3,"file":"input-number.mjs","sources":["../../../../../../packages/components/input-number/src/input-number.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ns.b(),\n ns.m(inputNumberSize),\n ns.m(effect),\n ns.is('disabled', inputNumberDisabled),\n ns.is('without-controls', !controls),\n ns.is('controls-right', controlsAtRight),\n ]\"\n @dragstart.prevent\n >\n <span\n v-if=\"controls\"\n v-repeat-click=\"decrease\"\n role=\"button\"\n :aria-label=\"t('el.inputNumber.decrease')\"\n :class=\"[ns.e('decrease'), ns.is('disabled', minDisabled)]\"\n @keydown.enter=\"decrease\"\n >\n <el-icon>\n <svg v-if=\"controlsAtRight\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\">\n <path d=\"M5.99952 7.93206L10.0654 3.86619C10.163 3.76856 10.3213 3.76856 10.4189 3.86619L10.7725 4.21975C10.8701 4.31738 10.8701 4.47567 10.7725 4.5733L6.35307 8.99272C6.15781 9.18798 5.84122 9.18798 5.64596 8.99272L1.22654 4.5733C1.12891 4.47567 1.12891 4.31738 1.22654 4.21975L1.5801 3.86619C1.67773 3.76856 1.83602 3.76856 1.93365 3.86619L5.99952 7.93206Z\"/>\n </svg>\n <minus v-else />\n </el-icon>\n </span>\n <span\n v-if=\"controls\"\n v-repeat-click=\"increase\"\n role=\"button\"\n :aria-label=\"t('el.inputNumber.increase')\"\n :class=\"[ns.e('increase'), ns.is('disabled', maxDisabled)]\"\n @keydown.enter=\"increase\"\n >\n <el-icon>\n <svg v-if=\"controlsAtRight\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\">\n <path d=\"M6.00048 4.06794L1.93462 8.13381C1.83699 8.23144 1.6787 8.23144 1.58107 8.13381L1.22751 7.78025C1.12988 7.68262 1.12988 7.52433 1.22751 7.4267L5.64693 3.00728C5.84219 2.81202 6.15878 2.81202 6.35404 3.00728L10.7735 7.4267C10.8711 7.52433 10.8711 7.68262 10.7735 7.78025L10.4199 8.13381C10.3223 8.23144 10.164 8.23144 10.0663 8.13381L6.00048 4.06794Z\"/>\n </svg>\n <plus v-else />\n </el-icon>\n </span>\n <el-input\n :id=\"id\"\n ref=\"input\"\n type=\"number\"\n :step=\"step\"\n :model-value=\"displayValue\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"inputNumberDisabled\"\n :size=\"inputNumberSize\"\n :max=\"max\"\n :effect=\"effect\"\n :min=\"min\"\n :name=\"name\"\n :label=\"label\"\n :validate-event=\"false\"\n @keydown.up.prevent=\"increase\"\n @keydown.down.prevent=\"decrease\"\n @blur=\"handleBlur\"\n @focus=\"handleFocus\"\n @input=\"handleInput\"\n @change=\"handleInputChange\"\n />\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, onMounted, onUpdated, reactive, ref, watch } from 'vue'\nimport { isNil } from 'lodash-unified'\nimport { ElInput } from '@element-plus/components/input'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { vRepeatClick } from '@element-plus/directives'\nimport {\n useDisabled,\n useFormItem,\n useLocale,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport { debugWarn, isNumber, isString, isUndefined } from '@element-plus/utils'\nimport { Minus, Plus } from '@element-plus/icons-vue'\nimport {\n CHANGE_EVENT,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { inputNumberEmits, inputNumberProps } from './input-number'\n\nimport type { InputInstance } from '@element-plus/components/input'\n\ndefineOptions({\n name: 'ElInputNumber',\n})\n\nconst props = defineProps(inputNumberProps)\nconst emit = defineEmits(inputNumberEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('input-number')\nconst input = ref<InputInstance>()\n\ninterface Data {\n currentValue: number | null | undefined\n userInput: null | number | string\n}\nconst data = reactive<Data>({\n currentValue: props.modelValue,\n userInput: null,\n})\n\nconst { formItem } = useFormItem()\n\nconst minDisabled = computed(\n () =>\n isNumber(props.modelValue) &&\n ensurePrecision(props.modelValue, -1)! < props.min\n)\nconst maxDisabled = computed(\n () =>\n isNumber(props.modelValue) && ensurePrecision(props.modelValue)! > props.max\n)\n\nconst numPrecision = computed(() => {\n const stepPrecision = getPrecision(props.step)\n if (!isUndefined(props.precision)) {\n if (stepPrecision > props.precision) {\n debugWarn(\n 'InputNumber',\n 'precision should not be less than the decimal places of step'\n )\n }\n return props.precision\n } else {\n return Math.max(getPrecision(props.modelValue), stepPrecision)\n }\n})\nconst controlsAtRight = computed(() => {\n return props.controls && props.controlsPosition === 'right'\n})\n\nconst inputNumberSize = useSize()\nconst inputNumberDisabled = useDisabled()\n\nconst displayValue = computed(() => {\n if (data.userInput !== null) {\n return data.userInput\n }\n let currentValue: number | string | undefined | null = data.currentValue\n if (isNil(currentValue)) return ''\n if (isNumber(currentValue)) {\n if (Number.isNaN(currentValue)) return ''\n if (!isUndefined(props.precision)) {\n currentValue = currentValue.toFixed(props.precision)\n }\n }\n return currentValue\n})\nconst toPrecision = (num: number, pre?: number) => {\n if (isUndefined(pre)) pre = numPrecision.value\n if (pre === 0) return Math.round(num)\n let snum = String(num)\n const pointPos = snum.indexOf('.')\n if (pointPos === -1) return num\n const nums = snum.replace('.', '').split('')\n const datum = nums[pointPos + pre]\n if (!datum) return num\n const length = snum.length\n if (snum.charAt(length - 1) === '5') {\n snum = `${snum.slice(0, Math.max(0, length - 1))}6`\n }\n return Number.parseFloat(Number(snum).toFixed(pre))\n}\nconst getPrecision = (value: number | null | undefined) => {\n if (isNil(value)) return 0\n const valueString = value.toString()\n const dotPosition = valueString.indexOf('.')\n let precision = 0\n if (dotPosition !== -1) {\n precision = valueString.length - dotPosition - 1\n }\n return precision\n}\nconst ensurePrecision = (val: number, coefficient: 1 | -1 = 1) => {\n if (!isNumber(val)) return data.currentValue\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n return toPrecision(val + props.step * coefficient)\n}\nconst increase = () => {\n if (props.readonly || inputNumberDisabled.value || maxDisabled.value) return\n const value = Number(displayValue.value) || 0\n const newVal = ensurePrecision(value)\n setCurrentValue(newVal)\n emit(INPUT_EVENT, data.currentValue)\n}\nconst decrease = () => {\n if (props.readonly || inputNumberDisabled.value || minDisabled.value) return\n const value = Number(displayValue.value) || 0\n const newVal = ensurePrecision(value, -1)\n setCurrentValue(newVal)\n emit(INPUT_EVENT, data.currentValue)\n}\nconst verifyValue = (\n value: number | string | null | undefined,\n update?: boolean\n): number | null | undefined => {\n const { max, min, step, precision, stepStrictly, valueOnClear } = props\n let newVal = Number(value)\n if (isNil(value) || Number.isNaN(newVal)) {\n return null\n }\n if (value === '') {\n if (valueOnClear === null) {\n return null\n }\n newVal = isString(valueOnClear) ? { min, max }[valueOnClear] : valueOnClear\n }\n if (stepStrictly) {\n newVal = toPrecision(Math.round(newVal / step) * step, precision)\n }\n if (!isUndefined(precision)) {\n newVal = toPrecision(newVal, precision)\n }\n if (newVal > max || newVal < min) {\n newVal = newVal > max ? max : min\n update && emit(UPDATE_MODEL_EVENT, newVal)\n }\n return newVal\n}\nconst setCurrentValue = (value: number | string | null | undefined) => {\n const oldVal = data.currentValue\n const newVal = verifyValue(value)\n if (oldVal === newVal) return\n data.userInput = null\n emit(UPDATE_MODEL_EVENT, newVal!)\n emit(CHANGE_EVENT, newVal!, oldVal!)\n if (props.validateEvent) {\n formItem?.validate?.('change').catch((err) => debugWarn(err))\n }\n data.currentValue = newVal\n}\nconst handleInput = (value: string) => {\n data.userInput = value\n emit(INPUT_EVENT, value === '' ? null : Number(value))\n}\nconst handleInputChange = (value: string) => {\n const newVal = value !== '' ? Number(value) : ''\n if ((isNumber(newVal) && !Number.isNaN(newVal)) || value === '') {\n setCurrentValue(newVal)\n }\n data.userInput = null\n}\n\nconst focus = () => {\n input.value?.focus?.()\n}\n\nconst blur = () => {\n input.value?.blur?.()\n}\n\nconst handleFocus = (event: MouseEvent | FocusEvent) => {\n emit('focus', event)\n}\n\nconst handleBlur = (event: MouseEvent | FocusEvent) => {\n emit('blur', event)\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n}\n\nwatch(\n () => props.modelValue,\n (value) => {\n data.currentValue = verifyValue(value, true)\n data.userInput = null\n },\n { immediate: true }\n)\nonMounted(() => {\n const { min, max, modelValue } = props\n const innerInput = input.value?.input as HTMLInputElement\n innerInput.setAttribute('role', 'spinbutton')\n if (Number.isFinite(max)) {\n innerInput.setAttribute('aria-valuemax', String(max))\n } else {\n innerInput.removeAttribute('aria-valuemax')\n }\n if (Number.isFinite(min)) {\n innerInput.setAttribute('aria-valuemin', String(min))\n } else {\n innerInput.removeAttribute('aria-valuemin')\n }\n innerInput.setAttribute('aria-valuenow', String(data.currentValue))\n innerInput.setAttribute('aria-disabled', String(inputNumberDisabled.value))\n if (!isNumber(modelValue) && modelValue != null) {\n let val: number | null = Number(modelValue)\n if (Number.isNaN(val)) {\n val = null\n }\n emit(UPDATE_MODEL_EVENT, val!)\n }\n})\nonUpdated(() => {\n const innerInput = input.value?.input\n innerInput?.setAttribute('aria-valuenow', `${data.currentValue}`)\n})\ndefineExpose({\n /** @description get focus the input component */\n focus,\n /** @description remove focus the input component */\n blur,\n})\n</script>\n"],"names":[],"mappings":"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"}