code-monkey-ui 1.2.0-alpha.2 → 2.0.0

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 (612) hide show
  1. package/dist/index.full.js +43 -19
  2. package/dist/index.full.min.js +18 -18
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +18 -18
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +43 -19
  7. package/es/components/anchor/index.mjs +3 -3
  8. package/es/components/anchor/src/anchor-link.mjs +6 -81
  9. package/es/components/anchor/src/anchor-link.mjs.map +1 -1
  10. package/es/components/anchor/src/anchor-link2.mjs +81 -6
  11. package/es/components/anchor/src/anchor-link2.mjs.map +1 -1
  12. package/es/components/anchor/src/anchor.mjs +193 -38
  13. package/es/components/anchor/src/anchor.mjs.map +1 -1
  14. package/es/components/anchor/src/anchor2.mjs +38 -193
  15. package/es/components/anchor/src/anchor2.mjs.map +1 -1
  16. package/es/components/autocomplete/index.mjs +2 -2
  17. package/es/components/autocomplete/src/autocomplete.mjs +366 -81
  18. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  19. package/es/components/autocomplete/src/autocomplete2.mjs +81 -366
  20. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  21. package/es/components/avatar/index.mjs +2 -2
  22. package/es/components/avatar/src/avatar.mjs +66 -32
  23. package/es/components/avatar/src/avatar.mjs.map +1 -1
  24. package/es/components/avatar/src/avatar2.mjs +32 -66
  25. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  26. package/es/components/batch/index.d.ts +189 -29
  27. package/es/components/batch/src/batch.d.ts +1 -0
  28. package/es/components/batch/src/batch.mjs +42 -19
  29. package/es/components/batch/src/batch.mjs.map +1 -1
  30. package/es/components/batch/src/batch.vue.d.ts +22 -3
  31. package/es/components/batch/src/batch2.mjs +2 -1
  32. package/es/components/batch/src/batch2.mjs.map +1 -1
  33. package/es/components/breadcrumb/index.mjs +2 -2
  34. package/es/components/breadcrumb/src/breadcrumb-item.mjs +9 -57
  35. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  36. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +57 -9
  37. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  38. package/es/components/card/index.mjs +2 -2
  39. package/es/components/card/src/card.mjs +43 -21
  40. package/es/components/card/src/card.mjs.map +1 -1
  41. package/es/components/card/src/card2.mjs +21 -43
  42. package/es/components/card/src/card2.mjs.map +1 -1
  43. package/es/components/carousel/index.mjs +4 -4
  44. package/es/components/carousel/src/carousel-item.mjs +70 -8
  45. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  46. package/es/components/carousel/src/carousel-item2.mjs +8 -70
  47. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  48. package/es/components/carousel/src/carousel.mjs +62 -205
  49. package/es/components/carousel/src/carousel.mjs.map +1 -1
  50. package/es/components/carousel/src/carousel2.mjs +205 -62
  51. package/es/components/carousel/src/carousel2.mjs.map +1 -1
  52. package/es/components/cascader/index.mjs +2 -2
  53. package/es/components/cascader/src/cascader.mjs +83 -628
  54. package/es/components/cascader/src/cascader.mjs.map +1 -1
  55. package/es/components/cascader/src/cascader2.mjs +628 -83
  56. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  57. package/es/components/check-tag/index.mjs +2 -2
  58. package/es/components/check-tag/src/check-tag.mjs +39 -15
  59. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  60. package/es/components/check-tag/src/check-tag2.mjs +15 -39
  61. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  62. package/es/components/checkbox/index.mjs +2 -2
  63. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  64. package/es/components/checkbox/src/checkbox.mjs +61 -120
  65. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  66. package/es/components/checkbox/src/checkbox2.mjs +120 -61
  67. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  68. package/es/components/col/index.mjs +2 -2
  69. package/es/components/col/src/col.mjs +66 -43
  70. package/es/components/col/src/col.mjs.map +1 -1
  71. package/es/components/col/src/col2.mjs +43 -66
  72. package/es/components/col/src/col2.mjs.map +1 -1
  73. package/es/components/collapse/index.mjs +4 -4
  74. package/es/components/collapse/src/collapse-item.mjs +19 -90
  75. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  76. package/es/components/collapse/src/collapse-item2.mjs +90 -19
  77. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  78. package/es/components/collapse/src/collapse.mjs +28 -18
  79. package/es/components/collapse/src/collapse.mjs.map +1 -1
  80. package/es/components/collapse/src/collapse2.mjs +18 -28
  81. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  82. package/es/components/color-picker/index.mjs +2 -2
  83. package/es/components/color-picker/src/color-picker.mjs +42 -402
  84. package/es/components/color-picker/src/color-picker.mjs.map +1 -1
  85. package/es/components/color-picker/src/color-picker2.mjs +402 -42
  86. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  87. package/es/components/color-picker/src/components/predefine.mjs +1 -1
  88. package/es/components/descriptions/src/description2.mjs +1 -1
  89. package/es/components/descriptions/src/descriptions-row.mjs +63 -7
  90. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  91. package/es/components/descriptions/src/descriptions-row2.mjs +7 -63
  92. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  93. package/es/components/divider/index.mjs +2 -2
  94. package/es/components/divider/src/divider.mjs +35 -17
  95. package/es/components/divider/src/divider.mjs.map +1 -1
  96. package/es/components/divider/src/divider2.mjs +17 -35
  97. package/es/components/divider/src/divider2.mjs.map +1 -1
  98. package/es/components/dropdown/index.mjs +2 -2
  99. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  100. package/es/components/dropdown/src/dropdown-item.mjs +1 -1
  101. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  102. package/es/components/dropdown/src/dropdown.mjs +304 -94
  103. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  104. package/es/components/dropdown/src/dropdown2.mjs +94 -304
  105. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  106. package/es/components/dsh-cascader/index.mjs +2 -2
  107. package/es/components/dsh-cascader/src/dsh-cascader.mjs +87 -723
  108. package/es/components/dsh-cascader/src/dsh-cascader.mjs.map +1 -1
  109. package/es/components/dsh-cascader/src/dsh-cascader2.mjs +723 -87
  110. package/es/components/dsh-cascader/src/dsh-cascader2.mjs.map +1 -1
  111. package/es/components/dsh-select/src/select.mjs +1 -1
  112. package/es/components/dshIndex.mjs +1 -1
  113. package/es/components/empty/index.mjs +2 -2
  114. package/es/components/empty/src/empty.mjs +11 -53
  115. package/es/components/empty/src/empty.mjs.map +1 -1
  116. package/es/components/empty/src/empty2.mjs +53 -11
  117. package/es/components/empty/src/empty2.mjs.map +1 -1
  118. package/es/components/form/index.mjs +4 -4
  119. package/es/components/form/src/form-item.mjs +321 -48
  120. package/es/components/form/src/form-item.mjs.map +1 -1
  121. package/es/components/form/src/form-item2.mjs +48 -321
  122. package/es/components/form/src/form-item2.mjs.map +1 -1
  123. package/es/components/form/src/form.mjs +153 -54
  124. package/es/components/form/src/form.mjs.map +1 -1
  125. package/es/components/form/src/form2.mjs +54 -153
  126. package/es/components/form/src/form2.mjs.map +1 -1
  127. package/es/components/icon/index.mjs +2 -2
  128. package/es/components/icon/src/icon.mjs +8 -36
  129. package/es/components/icon/src/icon.mjs.map +1 -1
  130. package/es/components/icon/src/icon2.mjs +36 -8
  131. package/es/components/icon/src/icon2.mjs.map +1 -1
  132. package/es/components/image/index.mjs +2 -2
  133. package/es/components/image/src/image.mjs +64 -233
  134. package/es/components/image/src/image.mjs.map +1 -1
  135. package/es/components/image/src/image2.mjs +233 -64
  136. package/es/components/image/src/image2.mjs.map +1 -1
  137. package/es/components/index.mjs +45 -45
  138. package/es/components/input-number/index.mjs +2 -2
  139. package/es/components/input-number/src/input-number.mjs +329 -60
  140. package/es/components/input-number/src/input-number.mjs.map +1 -1
  141. package/es/components/input-number/src/input-number2.mjs +60 -329
  142. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  143. package/es/components/menu/index.mjs +2 -2
  144. package/es/components/menu/src/menu-item.mjs +97 -14
  145. package/es/components/menu/src/menu-item.mjs.map +1 -1
  146. package/es/components/menu/src/menu-item2.mjs +14 -97
  147. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  148. package/es/components/notification/index.mjs +1 -1
  149. package/es/components/notification/src/notification.mjs +145 -64
  150. package/es/components/notification/src/notification.mjs.map +1 -1
  151. package/es/components/notification/src/notification2.mjs +64 -145
  152. package/es/components/notification/src/notification2.mjs.map +1 -1
  153. package/es/components/notification/src/notify.mjs +2 -2
  154. package/es/components/page-header/index.mjs +2 -2
  155. package/es/components/page-header/src/page-header.mjs +102 -17
  156. package/es/components/page-header/src/page-header.mjs.map +1 -1
  157. package/es/components/page-header/src/page-header2.mjs +17 -102
  158. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  159. package/es/components/pagination/src/components/jumper.mjs +9 -59
  160. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  161. package/es/components/pagination/src/components/jumper2.mjs +59 -9
  162. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  163. package/es/components/pagination/src/components/next.mjs +36 -19
  164. package/es/components/pagination/src/components/next.mjs.map +1 -1
  165. package/es/components/pagination/src/components/next2.mjs +19 -36
  166. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  167. package/es/components/pagination/src/components/pager.mjs +210 -17
  168. package/es/components/pagination/src/components/pager.mjs.map +1 -1
  169. package/es/components/pagination/src/components/pager2.mjs +17 -210
  170. package/es/components/pagination/src/components/pager2.mjs.map +1 -1
  171. package/es/components/pagination/src/pagination.mjs +3 -3
  172. package/es/components/popover/src/popover.mjs +2 -2
  173. package/es/components/popper/index.mjs +2 -2
  174. package/es/components/popper/src/popper.mjs +25 -32
  175. package/es/components/popper/src/popper.mjs.map +1 -1
  176. package/es/components/popper/src/popper2.mjs +32 -25
  177. package/es/components/popper/src/popper2.mjs.map +1 -1
  178. package/es/components/radio/index.mjs +4 -4
  179. package/es/components/radio/src/radio-button.mjs +6 -66
  180. package/es/components/radio/src/radio-button.mjs.map +1 -1
  181. package/es/components/radio/src/radio-button2.mjs +66 -6
  182. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  183. package/es/components/radio/src/radio-group.mjs +68 -35
  184. package/es/components/radio/src/radio-group.mjs.map +1 -1
  185. package/es/components/radio/src/radio-group2.mjs +35 -68
  186. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  187. package/es/components/rate/index.mjs +2 -2
  188. package/es/components/rate/src/rate.mjs +83 -259
  189. package/es/components/rate/src/rate.mjs.map +1 -1
  190. package/es/components/rate/src/rate2.mjs +259 -83
  191. package/es/components/rate/src/rate2.mjs.map +1 -1
  192. package/es/components/row/index.mjs +2 -2
  193. package/es/components/row/src/row.mjs +29 -45
  194. package/es/components/row/src/row.mjs.map +1 -1
  195. package/es/components/row/src/row2.mjs +45 -29
  196. package/es/components/row/src/row2.mjs.map +1 -1
  197. package/es/components/scrollbar/index.mjs +2 -2
  198. package/es/components/scrollbar/src/scrollbar.mjs +169 -55
  199. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  200. package/es/components/scrollbar/src/scrollbar2.mjs +55 -169
  201. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  202. package/es/components/segmented/index.mjs +2 -2
  203. package/es/components/segmented/src/segmented.mjs +30 -158
  204. package/es/components/segmented/src/segmented.mjs.map +1 -1
  205. package/es/components/segmented/src/segmented2.mjs +158 -30
  206. package/es/components/segmented/src/segmented2.mjs.map +1 -1
  207. package/es/components/select/index.mjs +1 -1
  208. package/es/components/select/src/select.mjs +411 -103
  209. package/es/components/select/src/select.mjs.map +1 -1
  210. package/es/components/select/src/select2.mjs +103 -411
  211. package/es/components/select/src/select2.mjs.map +1 -1
  212. package/es/components/select-v2/src/defaults.mjs +1 -1
  213. package/es/components/skeleton/index.mjs +2 -2
  214. package/es/components/skeleton/src/skeleton.mjs +49 -22
  215. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  216. package/es/components/skeleton/src/skeleton2.mjs +22 -49
  217. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  218. package/es/components/statistic/index.mjs +2 -2
  219. package/es/components/statistic/src/statistic.mjs +70 -25
  220. package/es/components/statistic/src/statistic.mjs.map +1 -1
  221. package/es/components/statistic/src/statistic2.mjs +25 -70
  222. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  223. package/es/components/steps/index.mjs +2 -2
  224. package/es/components/steps/src/item.mjs +19 -191
  225. package/es/components/steps/src/item.mjs.map +1 -1
  226. package/es/components/steps/src/item2.mjs +191 -19
  227. package/es/components/steps/src/item2.mjs.map +1 -1
  228. package/es/components/tabs/index.mjs +1 -1
  229. package/es/components/tabs/src/tab-bar.mjs +7 -96
  230. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  231. package/es/components/tabs/src/tab-bar2.mjs +96 -7
  232. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  233. package/es/components/tabs/src/tab-nav.mjs +1 -1
  234. package/es/components/tag/index.mjs +2 -2
  235. package/es/components/tag/src/tag.mjs +29 -98
  236. package/es/components/tag/src/tag.mjs.map +1 -1
  237. package/es/components/tag/src/tag2.mjs +98 -29
  238. package/es/components/tag/src/tag2.mjs.map +1 -1
  239. package/es/components/teleport/index.mjs +2 -2
  240. package/es/components/teleport/src/teleport.mjs +18 -9
  241. package/es/components/teleport/src/teleport.mjs.map +1 -1
  242. package/es/components/teleport/src/teleport2.mjs +9 -18
  243. package/es/components/teleport/src/teleport2.mjs.map +1 -1
  244. package/es/components/text/index.mjs +2 -2
  245. package/es/components/text/src/text.mjs +38 -22
  246. package/es/components/text/src/text.mjs.map +1 -1
  247. package/es/components/text/src/text2.mjs +22 -38
  248. package/es/components/text/src/text2.mjs.map +1 -1
  249. package/es/components/time-select/index.mjs +2 -2
  250. package/es/components/time-select/src/time-select.mjs +124 -51
  251. package/es/components/time-select/src/time-select.mjs.map +1 -1
  252. package/es/components/time-select/src/time-select2.mjs +51 -124
  253. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  254. package/es/components/timeline/index.mjs +2 -2
  255. package/es/components/timeline/src/timeline-item.mjs +34 -73
  256. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  257. package/es/components/timeline/src/timeline-item2.mjs +73 -34
  258. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  259. package/es/components/tooltip/index.mjs +3 -3
  260. package/es/components/tooltip/src/tooltip.mjs +31 -168
  261. package/es/components/tooltip/src/tooltip.mjs.map +1 -1
  262. package/es/components/tooltip/src/tooltip2.mjs +168 -31
  263. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  264. package/es/components/tooltip/src/trigger.mjs +16 -73
  265. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  266. package/es/components/tooltip/src/trigger2.mjs +73 -16
  267. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  268. package/es/components/tooltip-v2/index.mjs +4 -4
  269. package/es/components/tooltip-v2/src/content.mjs +49 -111
  270. package/es/components/tooltip-v2/src/content.mjs.map +1 -1
  271. package/es/components/tooltip-v2/src/content2.mjs +111 -49
  272. package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
  273. package/es/components/tooltip-v2/src/root.mjs +17 -80
  274. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  275. package/es/components/tooltip-v2/src/root2.mjs +80 -17
  276. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  277. package/es/components/tooltip-v2/src/tooltip.mjs +78 -21
  278. package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
  279. package/es/components/tooltip-v2/src/tooltip2.mjs +21 -78
  280. package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
  281. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  282. package/es/components/transfer/src/transfer-panel.mjs +19 -128
  283. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  284. package/es/components/transfer/src/transfer-panel2.mjs +128 -19
  285. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  286. package/es/components/transfer/src/transfer.mjs +1 -1
  287. package/es/components/upload/index.mjs +2 -2
  288. package/es/components/upload/src/upload-content.mjs +1 -1
  289. package/es/components/upload/src/upload-dragger.mjs +11 -49
  290. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  291. package/es/components/upload/src/upload-dragger2.mjs +49 -11
  292. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  293. package/es/components/upload/src/upload-list.mjs +175 -29
  294. package/es/components/upload/src/upload-list.mjs.map +1 -1
  295. package/es/components/upload/src/upload-list2.mjs +29 -175
  296. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  297. package/es/components/upload/src/upload2.mjs +1 -1
  298. package/es/components/visual-hidden/index.mjs +3 -3
  299. package/es/components/visual-hidden/src/visual-hidden.mjs +35 -7
  300. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  301. package/es/components/visual-hidden/src/visual-hidden2.mjs +7 -35
  302. package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
  303. package/es/components/watermark/index.mjs +2 -2
  304. package/es/components/watermark/src/watermark.mjs +28 -209
  305. package/es/components/watermark/src/watermark.mjs.map +1 -1
  306. package/es/components/watermark/src/watermark2.mjs +209 -28
  307. package/es/components/watermark/src/watermark2.mjs.map +1 -1
  308. package/es/index.mjs +46 -46
  309. package/global.d.ts +3 -0
  310. package/lib/components/anchor/index.js +3 -3
  311. package/lib/components/anchor/src/anchor-link.js +6 -81
  312. package/lib/components/anchor/src/anchor-link.js.map +1 -1
  313. package/lib/components/anchor/src/anchor-link2.js +81 -6
  314. package/lib/components/anchor/src/anchor-link2.js.map +1 -1
  315. package/lib/components/anchor/src/anchor.js +192 -38
  316. package/lib/components/anchor/src/anchor.js.map +1 -1
  317. package/lib/components/anchor/src/anchor2.js +38 -192
  318. package/lib/components/anchor/src/anchor2.js.map +1 -1
  319. package/lib/components/autocomplete/index.js +2 -2
  320. package/lib/components/autocomplete/src/autocomplete.js +364 -80
  321. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  322. package/lib/components/autocomplete/src/autocomplete2.js +80 -364
  323. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  324. package/lib/components/avatar/index.js +2 -2
  325. package/lib/components/avatar/src/avatar.js +66 -33
  326. package/lib/components/avatar/src/avatar.js.map +1 -1
  327. package/lib/components/avatar/src/avatar2.js +33 -66
  328. package/lib/components/avatar/src/avatar2.js.map +1 -1
  329. package/lib/components/batch/index.d.ts +189 -29
  330. package/lib/components/batch/src/batch.d.ts +1 -0
  331. package/lib/components/batch/src/batch.js +41 -18
  332. package/lib/components/batch/src/batch.js.map +1 -1
  333. package/lib/components/batch/src/batch.vue.d.ts +22 -3
  334. package/lib/components/batch/src/batch2.js +2 -1
  335. package/lib/components/batch/src/batch2.js.map +1 -1
  336. package/lib/components/breadcrumb/index.js +2 -2
  337. package/lib/components/breadcrumb/src/breadcrumb-item.js +9 -57
  338. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  339. package/lib/components/breadcrumb/src/breadcrumb-item2.js +57 -9
  340. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  341. package/lib/components/card/index.js +2 -2
  342. package/lib/components/card/src/card.js +43 -21
  343. package/lib/components/card/src/card.js.map +1 -1
  344. package/lib/components/card/src/card2.js +21 -43
  345. package/lib/components/card/src/card2.js.map +1 -1
  346. package/lib/components/carousel/index.js +4 -4
  347. package/lib/components/carousel/src/carousel-item.js +70 -8
  348. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  349. package/lib/components/carousel/src/carousel-item2.js +8 -70
  350. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  351. package/lib/components/carousel/src/carousel.js +63 -205
  352. package/lib/components/carousel/src/carousel.js.map +1 -1
  353. package/lib/components/carousel/src/carousel2.js +205 -63
  354. package/lib/components/carousel/src/carousel2.js.map +1 -1
  355. package/lib/components/cascader/index.js +2 -2
  356. package/lib/components/cascader/src/cascader.js +84 -628
  357. package/lib/components/cascader/src/cascader.js.map +1 -1
  358. package/lib/components/cascader/src/cascader2.js +628 -84
  359. package/lib/components/cascader/src/cascader2.js.map +1 -1
  360. package/lib/components/check-tag/index.js +2 -2
  361. package/lib/components/check-tag/src/check-tag.js +39 -16
  362. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  363. package/lib/components/check-tag/src/check-tag2.js +16 -39
  364. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  365. package/lib/components/checkbox/index.js +2 -2
  366. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  367. package/lib/components/checkbox/src/checkbox.js +62 -120
  368. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  369. package/lib/components/checkbox/src/checkbox2.js +120 -62
  370. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  371. package/lib/components/col/index.js +2 -2
  372. package/lib/components/col/src/col.js +66 -43
  373. package/lib/components/col/src/col.js.map +1 -1
  374. package/lib/components/col/src/col2.js +43 -66
  375. package/lib/components/col/src/col2.js.map +1 -1
  376. package/lib/components/collapse/index.js +4 -4
  377. package/lib/components/collapse/src/collapse-item.js +19 -90
  378. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  379. package/lib/components/collapse/src/collapse-item2.js +90 -19
  380. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  381. package/lib/components/collapse/src/collapse.js +28 -20
  382. package/lib/components/collapse/src/collapse.js.map +1 -1
  383. package/lib/components/collapse/src/collapse2.js +20 -28
  384. package/lib/components/collapse/src/collapse2.js.map +1 -1
  385. package/lib/components/color-picker/index.js +2 -2
  386. package/lib/components/color-picker/src/color-picker.js +42 -400
  387. package/lib/components/color-picker/src/color-picker.js.map +1 -1
  388. package/lib/components/color-picker/src/color-picker2.js +400 -42
  389. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  390. package/lib/components/color-picker/src/components/predefine.js +1 -1
  391. package/lib/components/descriptions/src/description2.js +1 -1
  392. package/lib/components/descriptions/src/descriptions-row.js +63 -7
  393. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  394. package/lib/components/descriptions/src/descriptions-row2.js +7 -63
  395. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  396. package/lib/components/divider/index.js +2 -2
  397. package/lib/components/divider/src/divider.js +35 -17
  398. package/lib/components/divider/src/divider.js.map +1 -1
  399. package/lib/components/divider/src/divider2.js +17 -35
  400. package/lib/components/divider/src/divider2.js.map +1 -1
  401. package/lib/components/dropdown/index.js +2 -2
  402. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  403. package/lib/components/dropdown/src/dropdown-item.js +1 -1
  404. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  405. package/lib/components/dropdown/src/dropdown.js +304 -103
  406. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  407. package/lib/components/dropdown/src/dropdown2.js +103 -304
  408. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  409. package/lib/components/dsh-cascader/index.js +2 -2
  410. package/lib/components/dsh-cascader/src/dsh-cascader.js +88 -723
  411. package/lib/components/dsh-cascader/src/dsh-cascader.js.map +1 -1
  412. package/lib/components/dsh-cascader/src/dsh-cascader2.js +723 -88
  413. package/lib/components/dsh-cascader/src/dsh-cascader2.js.map +1 -1
  414. package/lib/components/dsh-select/src/select.js +1 -1
  415. package/lib/components/dshIndex.js +1 -1
  416. package/lib/components/empty/index.js +2 -2
  417. package/lib/components/empty/src/empty.js +11 -53
  418. package/lib/components/empty/src/empty.js.map +1 -1
  419. package/lib/components/empty/src/empty2.js +53 -11
  420. package/lib/components/empty/src/empty2.js.map +1 -1
  421. package/lib/components/form/index.js +4 -4
  422. package/lib/components/form/src/form-item.js +325 -49
  423. package/lib/components/form/src/form-item.js.map +1 -1
  424. package/lib/components/form/src/form-item2.js +49 -325
  425. package/lib/components/form/src/form-item2.js.map +1 -1
  426. package/lib/components/form/src/form.js +152 -55
  427. package/lib/components/form/src/form.js.map +1 -1
  428. package/lib/components/form/src/form2.js +55 -152
  429. package/lib/components/form/src/form2.js.map +1 -1
  430. package/lib/components/icon/index.js +2 -2
  431. package/lib/components/icon/src/icon.js +8 -36
  432. package/lib/components/icon/src/icon.js.map +1 -1
  433. package/lib/components/icon/src/icon2.js +36 -8
  434. package/lib/components/icon/src/icon2.js.map +1 -1
  435. package/lib/components/image/index.js +2 -2
  436. package/lib/components/image/src/image.js +64 -232
  437. package/lib/components/image/src/image.js.map +1 -1
  438. package/lib/components/image/src/image2.js +232 -64
  439. package/lib/components/image/src/image2.js.map +1 -1
  440. package/lib/components/index.js +45 -45
  441. package/lib/components/input-number/index.js +2 -2
  442. package/lib/components/input-number/src/input-number.js +327 -59
  443. package/lib/components/input-number/src/input-number.js.map +1 -1
  444. package/lib/components/input-number/src/input-number2.js +59 -327
  445. package/lib/components/input-number/src/input-number2.js.map +1 -1
  446. package/lib/components/menu/index.js +2 -2
  447. package/lib/components/menu/src/menu-item.js +97 -15
  448. package/lib/components/menu/src/menu-item.js.map +1 -1
  449. package/lib/components/menu/src/menu-item2.js +15 -97
  450. package/lib/components/menu/src/menu-item2.js.map +1 -1
  451. package/lib/components/notification/index.js +1 -1
  452. package/lib/components/notification/src/notification.js +144 -65
  453. package/lib/components/notification/src/notification.js.map +1 -1
  454. package/lib/components/notification/src/notification2.js +65 -144
  455. package/lib/components/notification/src/notification2.js.map +1 -1
  456. package/lib/components/notification/src/notify.js +2 -2
  457. package/lib/components/page-header/index.js +2 -2
  458. package/lib/components/page-header/src/page-header.js +102 -18
  459. package/lib/components/page-header/src/page-header.js.map +1 -1
  460. package/lib/components/page-header/src/page-header2.js +18 -102
  461. package/lib/components/page-header/src/page-header2.js.map +1 -1
  462. package/lib/components/pagination/src/components/jumper.js +9 -59
  463. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  464. package/lib/components/pagination/src/components/jumper2.js +59 -9
  465. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  466. package/lib/components/pagination/src/components/next.js +36 -19
  467. package/lib/components/pagination/src/components/next.js.map +1 -1
  468. package/lib/components/pagination/src/components/next2.js +19 -36
  469. package/lib/components/pagination/src/components/next2.js.map +1 -1
  470. package/lib/components/pagination/src/components/pager.js +210 -17
  471. package/lib/components/pagination/src/components/pager.js.map +1 -1
  472. package/lib/components/pagination/src/components/pager2.js +17 -210
  473. package/lib/components/pagination/src/components/pager2.js.map +1 -1
  474. package/lib/components/pagination/src/pagination.js +3 -3
  475. package/lib/components/popover/src/popover.js +2 -2
  476. package/lib/components/popper/index.js +2 -2
  477. package/lib/components/popper/src/popper.js +28 -32
  478. package/lib/components/popper/src/popper.js.map +1 -1
  479. package/lib/components/popper/src/popper2.js +32 -28
  480. package/lib/components/popper/src/popper2.js.map +1 -1
  481. package/lib/components/radio/index.js +4 -4
  482. package/lib/components/radio/src/radio-button.js +6 -66
  483. package/lib/components/radio/src/radio-button.js.map +1 -1
  484. package/lib/components/radio/src/radio-button2.js +66 -6
  485. package/lib/components/radio/src/radio-button2.js.map +1 -1
  486. package/lib/components/radio/src/radio-group.js +68 -36
  487. package/lib/components/radio/src/radio-group.js.map +1 -1
  488. package/lib/components/radio/src/radio-group2.js +36 -68
  489. package/lib/components/radio/src/radio-group2.js.map +1 -1
  490. package/lib/components/rate/index.js +2 -2
  491. package/lib/components/rate/src/rate.js +83 -258
  492. package/lib/components/rate/src/rate.js.map +1 -1
  493. package/lib/components/rate/src/rate2.js +258 -83
  494. package/lib/components/rate/src/rate2.js.map +1 -1
  495. package/lib/components/row/index.js +2 -2
  496. package/lib/components/row/src/row.js +31 -45
  497. package/lib/components/row/src/row.js.map +1 -1
  498. package/lib/components/row/src/row2.js +45 -31
  499. package/lib/components/row/src/row2.js.map +1 -1
  500. package/lib/components/scrollbar/index.js +2 -2
  501. package/lib/components/scrollbar/src/scrollbar.js +169 -56
  502. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  503. package/lib/components/scrollbar/src/scrollbar2.js +56 -169
  504. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  505. package/lib/components/segmented/index.js +2 -2
  506. package/lib/components/segmented/src/segmented.js +30 -157
  507. package/lib/components/segmented/src/segmented.js.map +1 -1
  508. package/lib/components/segmented/src/segmented2.js +157 -30
  509. package/lib/components/segmented/src/segmented2.js.map +1 -1
  510. package/lib/components/select/index.js +1 -1
  511. package/lib/components/select/src/select.js +411 -103
  512. package/lib/components/select/src/select.js.map +1 -1
  513. package/lib/components/select/src/select2.js +103 -411
  514. package/lib/components/select/src/select2.js.map +1 -1
  515. package/lib/components/select-v2/src/defaults.js +1 -1
  516. package/lib/components/skeleton/index.js +2 -2
  517. package/lib/components/skeleton/src/skeleton.js +49 -22
  518. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  519. package/lib/components/skeleton/src/skeleton2.js +22 -49
  520. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  521. package/lib/components/statistic/index.js +2 -2
  522. package/lib/components/statistic/src/statistic.js +70 -25
  523. package/lib/components/statistic/src/statistic.js.map +1 -1
  524. package/lib/components/statistic/src/statistic2.js +25 -70
  525. package/lib/components/statistic/src/statistic2.js.map +1 -1
  526. package/lib/components/steps/index.js +2 -2
  527. package/lib/components/steps/src/item.js +19 -191
  528. package/lib/components/steps/src/item.js.map +1 -1
  529. package/lib/components/steps/src/item2.js +191 -19
  530. package/lib/components/steps/src/item2.js.map +1 -1
  531. package/lib/components/tabs/index.js +1 -1
  532. package/lib/components/tabs/src/tab-bar.js +7 -96
  533. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  534. package/lib/components/tabs/src/tab-bar2.js +96 -7
  535. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  536. package/lib/components/tabs/src/tab-nav.js +1 -1
  537. package/lib/components/tag/index.js +2 -2
  538. package/lib/components/tag/src/tag.js +30 -98
  539. package/lib/components/tag/src/tag.js.map +1 -1
  540. package/lib/components/tag/src/tag2.js +98 -30
  541. package/lib/components/tag/src/tag2.js.map +1 -1
  542. package/lib/components/teleport/index.js +2 -2
  543. package/lib/components/teleport/src/teleport.js +18 -9
  544. package/lib/components/teleport/src/teleport.js.map +1 -1
  545. package/lib/components/teleport/src/teleport2.js +9 -18
  546. package/lib/components/teleport/src/teleport2.js.map +1 -1
  547. package/lib/components/text/index.js +2 -2
  548. package/lib/components/text/src/text.js +38 -22
  549. package/lib/components/text/src/text.js.map +1 -1
  550. package/lib/components/text/src/text2.js +22 -38
  551. package/lib/components/text/src/text2.js.map +1 -1
  552. package/lib/components/time-select/index.js +2 -2
  553. package/lib/components/time-select/src/time-select.js +129 -51
  554. package/lib/components/time-select/src/time-select.js.map +1 -1
  555. package/lib/components/time-select/src/time-select2.js +51 -129
  556. package/lib/components/time-select/src/time-select2.js.map +1 -1
  557. package/lib/components/timeline/index.js +2 -2
  558. package/lib/components/timeline/src/timeline-item.js +34 -73
  559. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  560. package/lib/components/timeline/src/timeline-item2.js +73 -34
  561. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  562. package/lib/components/tooltip/index.js +3 -3
  563. package/lib/components/tooltip/src/tooltip.js +34 -167
  564. package/lib/components/tooltip/src/tooltip.js.map +1 -1
  565. package/lib/components/tooltip/src/tooltip2.js +167 -34
  566. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  567. package/lib/components/tooltip/src/trigger.js +16 -73
  568. package/lib/components/tooltip/src/trigger.js.map +1 -1
  569. package/lib/components/tooltip/src/trigger2.js +73 -16
  570. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  571. package/lib/components/tooltip-v2/index.js +4 -4
  572. package/lib/components/tooltip-v2/src/content.js +49 -111
  573. package/lib/components/tooltip-v2/src/content.js.map +1 -1
  574. package/lib/components/tooltip-v2/src/content2.js +111 -49
  575. package/lib/components/tooltip-v2/src/content2.js.map +1 -1
  576. package/lib/components/tooltip-v2/src/root.js +17 -80
  577. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  578. package/lib/components/tooltip-v2/src/root2.js +80 -17
  579. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  580. package/lib/components/tooltip-v2/src/tooltip.js +78 -21
  581. package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
  582. package/lib/components/tooltip-v2/src/tooltip2.js +21 -78
  583. package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
  584. package/lib/components/transfer/src/composables/use-check.js +1 -1
  585. package/lib/components/transfer/src/transfer-panel.js +21 -128
  586. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  587. package/lib/components/transfer/src/transfer-panel2.js +128 -21
  588. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  589. package/lib/components/transfer/src/transfer.js +1 -1
  590. package/lib/components/upload/index.js +2 -2
  591. package/lib/components/upload/src/upload-content.js +1 -1
  592. package/lib/components/upload/src/upload-dragger.js +12 -49
  593. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  594. package/lib/components/upload/src/upload-dragger2.js +49 -12
  595. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  596. package/lib/components/upload/src/upload-list.js +175 -30
  597. package/lib/components/upload/src/upload-list.js.map +1 -1
  598. package/lib/components/upload/src/upload-list2.js +30 -175
  599. package/lib/components/upload/src/upload-list2.js.map +1 -1
  600. package/lib/components/upload/src/upload2.js +1 -1
  601. package/lib/components/visual-hidden/index.js +2 -2
  602. package/lib/components/visual-hidden/src/visual-hidden.js +35 -7
  603. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  604. package/lib/components/visual-hidden/src/visual-hidden2.js +7 -35
  605. package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
  606. package/lib/components/watermark/index.js +2 -2
  607. package/lib/components/watermark/src/watermark.js +28 -209
  608. package/lib/components/watermark/src/watermark.js.map +1 -1
  609. package/lib/components/watermark/src/watermark2.js +209 -28
  610. package/lib/components/watermark/src/watermark2.js.map +1 -1
  611. package/lib/index.js +46 -46
  612. package/package.json +1 -1
@@ -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 { useAriaProps, useSizeProp } from '@code-monkey-ui/hooks'\nimport { buildProps, isNumber } from '@code-monkey-ui/utils'\nimport {\n CHANGE_EVENT,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@code-monkey-ui/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type InputNumber from './input-number.vue'\n\nexport const inputNumberProps = buildProps({\n /**\n * @description same as `id` in native input\n */\n id: {\n type: String,\n default: undefined,\n },\n /**\n * @description incremental step\n */\n step: {\n type: Number,\n default: 1,\n },\n /**\n * @description whether input value can only be multiple of step\n */\n stepStrictly: Boolean,\n /**\n * @description the maximum allowed value\n */\n max: {\n type: Number,\n default: Number.POSITIVE_INFINITY,\n },\n /**\n * @description the minimum allowed value\n */\n min: {\n type: Number,\n default: Number.NEGATIVE_INFINITY,\n },\n /**\n * @description binding value\n */\n modelValue: Number,\n /**\n * @description same as `readonly` in native input\n */\n readonly: Boolean,\n /**\n * @description whether the component is disabled\n */\n disabled: Boolean,\n /**\n * @description size of the component\n */\n size: useSizeProp,\n /**\n * @description whether to enable the control buttons\n */\n controls: {\n type: Boolean,\n default: true,\n },\n /**\n * @description position of the control buttons\n */\n controlsPosition: {\n type: String,\n default: '',\n values: ['', 'right'],\n },\n /**\n * @description value should be set when input box is cleared\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 /**\n * @description same as `name` in native input\n */\n name: String,\n /**\n * @description same as `placeholder` in native input\n */\n placeholder: String,\n /**\n * @description precision of input value\n */\n precision: {\n type: Number,\n validator: (val: number) =>\n val >= 0 && val === Number.parseInt(`${val}`, 10),\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n ...useAriaProps(['ariaLabel']),\n} as const)\nexport type InputNumberProps = ExtractPropTypes<typeof inputNumberProps>\n\nexport const inputNumberEmits = {\n [CHANGE_EVENT]: (cur: number | undefined, prev: 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,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,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,EAAE,GAAG,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC;AAChC,CAAC,EAAE;AACS,MAAC,gBAAgB,GAAG;AAChC,EAAE,CAAC,YAAY,GAAG,CAAC,GAAG,EAAE,IAAI,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.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 <slot name=\"decrease-icon\">\n <el-icon>\n <arrow-down v-if=\"controlsAtRight\" />\n <minus v-else />\n </el-icon>\n </slot>\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 <slot name=\"increase-icon\">\n <el-icon>\n <arrow-up v-if=\"controlsAtRight\" />\n <plus v-else />\n </el-icon>\n </slot>\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 :min=\"min\"\n :name=\"name\"\n :aria-label=\"ariaLabel\"\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 { ArrowDown, ArrowUp, Minus, Plus } from '@element-plus/icons-vue'\nimport { ElInput } from '@code-monkey-ui/components/input'\nimport { ElIcon } from '@code-monkey-ui/components/icon'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@code-monkey-ui/components/form'\nimport { vRepeatClick } from '@code-monkey-ui/directives'\nimport { useLocale, useNamespace } from '@code-monkey-ui/hooks'\nimport {\n debugWarn,\n isNumber,\n isString,\n isUndefined,\n throwError,\n} from '@code-monkey-ui/utils'\nimport {\n CHANGE_EVENT,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@code-monkey-ui/constants'\nimport { inputNumberEmits, inputNumberProps } from './input-number'\n\nimport type { InputInstance } from '@code-monkey-ui/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 () => isNumber(props.modelValue) && props.modelValue <= props.min\n)\nconst maxDisabled = computed(\n () => isNumber(props.modelValue) && 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 = useFormSize()\nconst inputNumberDisabled = useFormDisabled()\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 setCurrentValueToModelValue()\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 setCurrentValueToModelValue()\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 if (max < min) {\n throwError('InputNumber', 'min should not be greater than max.')\n }\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 = (\n value: number | string | null | undefined,\n emitChange = true\n) => {\n const oldVal = data.currentValue\n const newVal = verifyValue(value)\n if (!emitChange) {\n emit(UPDATE_MODEL_EVENT, newVal!)\n return\n }\n if (oldVal === newVal && value) return\n data.userInput = null\n emit(UPDATE_MODEL_EVENT, newVal!)\n if (oldVal !== newVal) {\n emit(CHANGE_EVENT, newVal!, oldVal!)\n }\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 const newVal = value === '' ? null : Number(value)\n emit(INPUT_EVENT, newVal)\n setCurrentValue(newVal, false)\n}\nconst handleInputChange = (value: string) => {\n const newVal = value !== '' ? Number(value) : ''\n if ((isNumber(newVal) && !Number.isNaN(newVal)) || value === '') {\n setCurrentValue(newVal)\n }\n setCurrentValueToModelValue()\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 data.userInput = null\n emit('blur', event)\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n}\n\nconst setCurrentValueToModelValue = () => {\n if (data.currentValue !== props.modelValue) {\n data.currentValue = props.modelValue\n }\n}\nconst handleWheel = (e: WheelEvent) => {\n if (document.activeElement === e.target) e.preventDefault()\n}\n\nwatch(\n () => props.modelValue,\n (value, oldValue) => {\n const newValue = verifyValue(value, true)\n if (data.userInput === null && newValue !== oldValue) {\n data.currentValue = newValue\n }\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(\n 'aria-valuenow',\n data.currentValue || data.currentValue === 0\n ? String(data.currentValue)\n : ''\n )\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 innerInput.addEventListener('wheel', handleWheel, { passive: false })\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":";;;;;;;;;;;;;;;;;;;;;;mCA8Fc,CAAA;AAAA,EACZ,IAAM,EAAA,eAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,EAAE,CAAE,EAAA,GAAI,SAAU,EAAA,CAAA;AACxB,IAAM,MAAA,EAAA,GAAK,aAAa,cAAc,CAAA,CAAA;AACtC,IAAA,MAAM,QAAQ,GAAmB,EAAA,CAAA;AAMjC,IAAA,MAAM,OAAO,QAAe,CAAA;AAAA,MAC1B,cAAc,KAAM,CAAA,UAAA;AAAA,MACpB,SAAW,EAAA,IAAA;AAAA,KACZ,CAAA,CAAA;AAED,IAAM,MAAA,EAAE,QAAS,EAAA,GAAI,WAAY,EAAA,CAAA;AAEjC,IAAA,MAAM,WAAc,GAAA,QAAA,CAAA,MAAA,QAAA,CAAA,KAAA,CAAA,UAAA,CAAA,IAAA,KAAA,CAAA,UAAA,IAAA,KAAA,CAAA,GAAA,CAAA,CAAA;AAAA,IAAA,iBACH,GAAA,eAAqB,QAAA,CAAM,gBAAoB,CAAA,IAAA,KAAA,CAAA,UAAA,IAAA,KAAA,CAAA,GAAA,CAAA,CAAA;AAAA,IAChE,MAAA,YAAA,GAAA,QAAA,CAAA,MAAA;AACA,MAAA,MAAoB,aAAA,GAAA,YAAA,CAAA,KAAA,CAAA,IAAA,CAAA,CAAA;AAAA,MAClB,gBAAe,CAAA,eAAqB,CAAA,EAAA;AAA0B,QAChE,IAAA,aAAA,GAAA,KAAA,CAAA,SAAA,EAAA;AAEA,UAAM,SAAA,CAAA,eAA8B,8DAAA,CAAA,CAAA;AAClC,SAAM;AACN,QAAA,OAAK,KAAA,CAAA,SAAkB,CAAA;AACrB,OAAI,MAAA;AACF,QAAA,OAAA,IAAA,CAAA,GAAA,CAAA,YAAA,CAAA,KAAA,CAAA,UAAA,CAAA,EAAA,aAAA,CAAA,CAAA;AAAA,OACE;AAAA,KACA,CAAA,CAAA;AAAA,IACF,MAAA,eAAA,GAAA,QAAA,CAAA,MAAA;AAAA,MACF,OAAA,KAAA,CAAA,QAAA,IAAA,KAAA,CAAA,gBAAA,KAAA,OAAA,CAAA;AACA,KAAA,CAAA,CAAA;AAAa,IAAA,MACR,eAAA,GAAA,WAAA,EAAA,CAAA;AACL,IAAA,MAAA,mBAAgB,GAAA,eAAmB,EAAA,CAAA;AAA0B,IAC/D,MAAA,YAAA,GAAA,QAAA,CAAA,MAAA;AAAA,MACD,IAAA,IAAA,CAAA,SAAA,KAAA,IAAA,EAAA;AACD,QAAM,OAAA,IAAA,CAAA;AACJ,OAAO;AAA6C,MACrD,IAAA,YAAA,GAAA,IAAA,CAAA,YAAA,CAAA;AAED,MAAA,IAAM,kBAAkB,CAAY;AACpC,QAAA;AAEA,MAAM,IAAA,QAAA,CAAA,eAAwB;AAC5B,QAAI,IAAA,yBAAyB,CAAA;AAC3B,UAAA,OAAY,EAAA,CAAA;AAAA,QACd,IAAA,CAAA,WAAA,CAAA,KAAA,CAAA,SAAA,CAAA,EAAA;AACA,UAAI,eAAmD,YAAK,CAAA,OAAA,CAAA,KAAA,CAAA,SAAA,CAAA,CAAA;AAC5D,SAAI;AACJ,OAAI;AACF,MAAA,OAAW,YAAM,CAAY;AAC7B,KAAA,CAAA,CAAA;AACE,IAAe,MAAA,WAAA,GAAA,CAAA,GAAA,EAAA,GAAA,KAAa;AAAuB,MACrD,IAAA,WAAA,CAAA,GAAA,CAAA;AAAA,QACF,GAAA,GAAA,YAAA,CAAA,KAAA,CAAA;AACA,MAAO,IAAA,GAAA,KAAA,CAAA;AAAA,QACR,OAAA,IAAA,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA;AACD,MAAM,IAAA,IAAA,GAAA,MAAA,CAAc,GAAC,CAAA,CAAA;AACnB,MAAA,MAAgB,QAAA,GAAA,IAAM,CAAA,OAAmB,CAAA,GAAA,CAAA,CAAA;AACzC,MAAA,IAAI,QAAQ,KAAU,CAAA,CAAA;AACtB,QAAI,OAAA;AACJ,MAAM,MAAA,IAAA,GAAA,IAAW,CAAK,OAAA,CAAA,GAAA,EAAW,EAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CAAA,CAAA;AACjC,MAAI,MAAA,KAAA,GAAA,aAAwB,GAAA,GAAA,CAAA,CAAA;AAC5B,MAAA,IAAA,CAAA;AACA,QAAM,OAAA,GAAA,CAAA;AACN,MAAI,YAAe,GAAA,IAAA,CAAA,MAAA,CAAA;AACnB,MAAA,IAAA,WAAe,CAAK,MAAA,GAAA,CAAA,CAAA,KAAA,GAAA,EAAA;AACpB,QAAA,IAAS,GAAA,CAAA,EAAA,IAAO,CAAS,KAAA,CAAA,CAAA,EAAC,QAAW,CAAA,CAAA,EAAA,MAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACnC,OAAO;AAAyC,MAClD,OAAA,MAAA,CAAA,UAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACA,KAAA,CAAA;AAAkD,IACpD,MAAA,YAAA,GAAA,CAAA,KAAA,KAAA;AACA,MAAM,IAAA,KAAA,CAAA,KAAA,CAAA;AACJ,QAAI,OAAA,CAAM,CAAK;AACf,MAAM,MAAA,WAAA,GAAc,MAAM,QAAS,EAAA,CAAA;AACnC,MAAM,MAAA,WAAA,GAAc,WAAY,CAAA,OAAA,CAAQ,GAAG,CAAA,CAAA;AAC3C,MAAA,IAAI,SAAY,GAAA,CAAA,CAAA;AAChB,MAAA,IAAI,gBAAgB,CAAI,CAAA,EAAA;AACtB,QAAY,SAAA,GAAA,WAAA,CAAY,SAAS,WAAc,GAAA,CAAA,CAAA;AAAA,OACjD;AACA,MAAO,OAAA,SAAA,CAAA;AAAA,KACT,CAAA;AACA,IAAA,MAAM,eAAkB,GAAA,CAAC,GAAa,EAAA,WAAA,GAAsB,CAAM,KAAA;AAChE,MAAA,IAAI,CAAC,QAAA,CAAS,GAAG,CAAA;AAEjB,QAAA,OAAmB,IAAA,CAAA,YAAY,CAAA;AAAkB,MACnD,OAAA,WAAA,CAAA,GAAA,GAAA,KAAA,CAAA,IAAA,GAAA,WAAA,CAAA,CAAA;AACA,KAAA,CAAA;AACE,IAAA,MAAI,QAAM,GAAA,MAAA;AACV,MAAA,IAAA,KAAc,CAAA,QAAA,IAAoB,mBAAU,CAAA,KAAA,IAAA,WAAA,CAAA,KAAA;AAC5C,QAAM,OAAA;AACN,MAAA,MAAA,KAAA,GAAA,MAAsB,CAAA,YAAA,CAAA,KAAA,CAAA,IAAA,CAAA,CAAA;AACtB,MAAK,MAAA,MAAA,GAAA,eAA8B,CAAA,KAAA,CAAA,CAAA;AACnC,MAA4B,eAAA,CAAA,MAAA,CAAA,CAAA;AAAA,MAC9B,IAAA,CAAA,WAAA,EAAA,IAAA,CAAA,YAAA,CAAA,CAAA;AACA,MAAA,2BAAuB,EAAA,CAAA;AACrB,KAAA,CAAA;AACA,IAAA,MAAA,QAAc,GAAA,MAAO;AACrB,MAAM,IAAA,KAAA,CAAA,QAAyB,IAAA,mBAAS,CAAA,KAAA,IAAA,WAAA,CAAA,KAAA;AACxC,QAAA,OAAA;AACA,MAAK,MAAA,KAAA,GAAA,mBAA8B,CAAA,KAAA,CAAA,IAAA,CAAA,CAAA;AACnC,MAA4B,MAAA,MAAA,GAAA,eAAA,CAAA,KAAA,EAAA,CAAA,CAAA,CAAA,CAAA;AAAA,MAC9B,eAAA,CAAA,MAAA,CAAA,CAAA;AACA,MAAM,IAAA,CAAA,WAAA,EAAc,IAClB,CAAA,YAE8B,CAAA,CAAA;AAC9B,MAAA,2BAAmC,EAAA,CAAA;AACnC,KAAA,CAAA;AACE,IAAA,MAAA,4BAA+D,KAAA;AAAA,MACjE,MAAA,EAAA,GAAA,EAAA,GAAA,EAAA,IAAA,EAAA,SAAA,EAAA,YAAA,EAAA,YAAA,EAAA,GAAA,KAAA,CAAA;AACA,MAAI,IAAA,GAAA,GAAA,GAAS;AACb,QAAA,UAAe,CAAA,aAAY,EAAA,qCAAe,CAAA,CAAA;AACxC,OAAO;AAAA,MACT,IAAA,MAAA,GAAA,MAAA,CAAA,KAAA,CAAA,CAAA;AACA,MAAA,IAAI,WAAc,CAAA,IAAA,MAAA,CAAA,KAAA,CAAA,MAAA,CAAA,EAAA;AAChB,QAAA;AACE,OAAO;AAAA,MACT,IAAA,KAAA,KAAA,EAAA,EAAA;AACA,QAAS,IAAA,YAAA;AAAsD,UACjE,OAAA,IAAA,CAAA;AACA,SAAA;AACE,QAAA,MAAA,GAAS,qBAAiB,CAAA,UAAe,GAAI,EAAA,CAAA,YAAmB,CAAA,GAAA,YAAA,CAAA;AAAA,OAClE;AACA,MAAI,IAAA,YAAa,EAAA;AACf,QAAS,MAAA,GAAA,WAAA,CAAY,UAAiB,CAAA,MAAA,GAAA,IAAA,CAAA,GAAA,IAAA,EAAA,SAAA,CAAA,CAAA;AAAA,OACxC;AACA,MAAI,IAAA,CAAA,WAAgB,CAAA,SAAA,CAAA,EAAS;AAC3B,QAAS,MAAA,GAAA,kBAAqB,EAAA,SAAA,CAAA,CAAA;AAC9B,OAAU;AAA+B,MAC3C,IAAA,MAAA,GAAA,GAAA,IAAA,MAAA,GAAA,GAAA,EAAA;AACA,QAAO,MAAA,GAAA,MAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,CAAA;AAAA,QACT,MAAA,IAAA,IAAA,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAA;AACA,OAAA;AAIE,MAAA;AACA,KAAM,CAAA;AACN,IAAA,MAAI,eAAa,GAAA,CAAA,KAAA,EAAA,UAAA,GAAA,IAAA,KAAA;AACf,MAAA,IAAA,EAAA,CAAK;AACL,MAAA,MAAA,MAAA,GAAA,IAAA,CAAA,YAAA,CAAA;AAAA,MACF,MAAA,MAAA,GAAA,WAAA,CAAA,KAAA,CAAA,CAAA;AACA,MAAI,IAAA,CAAA,UAAW;AACf,QAAA,IAAiB,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAA;AACjB,QAAA;AACA,OAAA;AACE,MAAK,IAAA,MAAA,KAAA,MAAc,SAAgB;AAAA,QACrC,OAAA;AACA,MAAA,IAAI,UAAqB,GAAA,IAAA,CAAA;AACvB,MAAU,IAAA,CAAA,kBAAW,QAAQ,CAAE,CAAA;AAA6B,MAC9D,IAAA,MAAA,KAAA,MAAA,EAAA;AACA,QAAA,IAAoB,CAAA,YAAA,EAAA,MAAA,EAAA,MAAA,CAAA,CAAA;AAAA,OACtB;AACA,MAAM,IAAA,KAAA,CAAA,aAAiC,EAAA;AACrC,QAAA,CAAA,EAAK,GAAY,QAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,QAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,QAAA,EAAA,QAAA,CAAA,CAAA,KAAA,CAAA,CAAA,GAAA,KAAA,SAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACjB,OAAA;AACA,MAAA,IAAA,CAAK,eAAmB,MAAA,CAAA;AACxB,KAAA,CAAA;AAA6B,IAC/B,MAAA,WAAA,GAAA,CAAA,KAAA,KAAA;AACA,MAAM,IAAA,CAAA,SAAA,GAAA,KAAA,CAAA;AACJ,MAAA,MAAM,MAAS,GAAA,KAAA,KAAU,EAAK,GAAA,IAAA,GAAO,MAAS,CAAA,KAAA,CAAA,CAAA;AAC9C,MAAK,IAAA,CAAA,mBAAoB,CAAC;AACxB,MAAA,eAAA,CAAA,MAAsB,EAAA,KAAA,CAAA,CAAA;AAAA,KACxB,CAAA;AACA,IAA4B,MAAA,iBAAA,GAAA,CAAA,KAAA,KAAA;AAC5B,MAAA,MAAiB,MAAA,GAAA,KAAA,KAAA,EAAA,GAAA,MAAA,CAAA,KAAA,CAAA,GAAA,EAAA,CAAA;AAAA,MACnB,IAAA,QAAA,CAAA,MAAA,CAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,MAAA,CAAA,IAAA,KAAA,KAAA,EAAA,EAAA;AAEA,QAAA,eAAoB,CAAA,MAAA,CAAA,CAAA;AAClB,OAAA;AAAqB,MACvB,2BAAA,EAAA,CAAA;AAEA,MAAA,IAAM,UAAa,GAAA,IAAA,CAAA;AACjB,KAAA,CAAA;AAAoB,IACtB,MAAA,KAAA,GAAA,MAAA;AAEA,MAAM,IAAA,EAAA,EAAA,EAAA,CAAA;AACJ,MAAA,CAAA,EAAA,cAAmB,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA;AAAA,KACrB,CAAA;AAEA,IAAM,MAAA,IAAA,GAAA,MAAa;AACjB,MAAA,IAAA,EAAiB,EAAA,EAAA,CAAA;AACjB,MAAA,CAAA,EAAA,cAAkB,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA;AAClB,KAAA,CAAA;AACE,IAAU,MAAA,WAAA,GAAA,CAAA,UAAiB;AAA+B,MAC5D,IAAA,CAAA,OAAA,EAAA,KAAA,CAAA,CAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAM;AACJ,MAAI,IAAA,EAAA,CAAA;AACF,MAAA,IAAA,CAAA,iBAAoB;AAAM,MAC5B,IAAA,CAAA,MAAA,EAAA,KAAA,CAAA,CAAA;AAAA,MACF,IAAA,KAAA,CAAA,aAAA,EAAA;AACA,QAAM,CAAA,EAAA,GAAA,QAAA,IAAiC,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,QAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,QAAA,EAAA,MAAA,CAAA,CAAA,KAAA,CAAA,CAAA,GAAA,KAAA,SAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACrC,OAAA;AAA0D,KAC5D,CAAA;AAEA,IAAA,MAAA,2BAAA,GAAA,MAAA;AAAA,MACE,QAAY,CAAA,YAAA,KAAA,KAAA,CAAA,UAAA,EAAA;AAAA,yBACS,GAAA,KAAA,CAAA,UAAA,CAAA;AACnB,OAAM;AACN,KAAA,CAAA;AACE,IAAA,MAAA,WAAoB,GAAA,CAAA,CAAA,KAAA;AAAA,MACtB,IAAA,QAAA,CAAA,aAAA,KAAA,CAAA,CAAA,MAAA;AAAA,QACF,CAAA,CAAA,cAAA,EAAA,CAAA;AAAA,KACA,CAAA;AAAkB,IACpB,KAAA,CAAA,MAAA,KAAA,CAAA,UAAA,EAAA,CAAA,KAAA,EAAA,QAAA,KAAA;AACA,MAAA,MAAA,QAAgB,GAAA,WAAA,CAAA,KAAA,EAAA,IAAA,CAAA,CAAA;AACd,MAAA,IAAA,IAAQ,CAAA,SAAU,KAAA,IAAA,IAAe,QAAA,KAAA,QAAA,EAAA;AACjC,QAAM,IAAA,CAAA,YAAa,WAAa,CAAA;AAChC,OAAW;AACX,KAAI,EAAA,EAAA,SAAgB,EAAA,IAAA,EAAA,CAAA,CAAA;AAClB,IAAA,SAAA,CAAA,MAAwB;AAA4B,MACtD,IAAO,EAAA,CAAA;AACL,MAAA,MAAA,EAAA,GAAA,EAAW,iBAA+B,GAAA,KAAA,CAAA;AAAA,MAC5C,MAAA,UAAA,GAAA,CAAA,EAAA,GAAA,KAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,CAAA;AACA,MAAI,UAAA,CAAO,YAAY,CAAG,MAAA,EAAA,YAAA,CAAA,CAAA;AACxB,MAAA,IAAA,MAAA,CAAA,QAAwB,CAAA,GAAA,CAAA,EAAA;AAA4B,QAC/C,UAAA,CAAA,YAAA,CAAA,eAAA,EAAA,MAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACL,OAAA,MAAA;AAA0C,QAC5C,UAAA,CAAA,eAAA,CAAA,eAAA,CAAA,CAAA;AACA,OAAW;AAAA,MACT,IAAA,MAAA,CAAA,QAAA,CAAA,GAAA,CAAA,EAAA;AAAA,QACA,uBAA0B,CAAA,eAAA,EAAA,MACtB,CAAO,GAAA,CAAA,CAAA,CAAA;AACP,OACN,MAAA;AACA,QAAA,UAAwB,CAAA,eAAA,CAAA,eAAwB,CAAA,CAAA;AAChD,OAAA;AACE,MAAI,UAAA,CAAA,YAAsC,CAAA,eAAA,EAAA,IAAA,CAAA,YAAA,IAAA,IAAA,CAAA,YAAA,KAAA,CAAA,GAAA,MAAA,CAAA,IAAA,CAAA,YAAA,CAAA,GAAA,EAAA,CAAA,CAAA;AAC1C,MAAI,UAAA,CAAA,YAAmB,CAAA,eAAA,EAAA,MAAA,CAAA,mBAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AACrB,MAAM,IAAA,CAAA,QAAA,CAAA,UAAA,CAAA,IAAA,UAAA,IAAA,IAAA,EAAA;AAAA,QACR,IAAA,GAAA,GAAA,MAAA,CAAA,UAAA,CAAA,CAAA;AACA,QAAA,IAAA;AAA6B,UAC/B,GAAA,GAAA,IAAA,CAAA;AACA,SAAA;AAAoE,QACrE,IAAA,CAAA,kBAAA,EAAA,GAAA,CAAA,CAAA;AACD,OAAA;AACE,MAAM,UAAA,CAAA,gBAA0B,CAAA,OAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,KAAA,EAAA,CAAA,CAAA;AAChC,KAAA,CAAA,CAAA;AAAsE,IACxE,SAAC,CAAA,MAAA;AACD,MAAa,IAAA,EAAA,EAAA,EAAA,CAAA;AAAA,MAAA,MAAA,UAAA,GAAA,CAAA,EAAA,GAAA,KAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,CAAA;AAAA,MAEX,UAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,UAAA,CAAA,YAAA,CAAA,eAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,IAAA,CAAA,YAAA,KAAA,IAAA,GAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA;AAAA,KAAA,CAAA,CAAA;AAAA,IAEA,MAAA,CAAA;AAAA,MACD,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,337 +1,68 @@
1
- import { defineComponent, ref, reactive, computed, watch, onMounted, onUpdated, openBlock, createElementBlock, normalizeClass, unref, withModifiers, withDirectives, withKeys, renderSlot, createVNode, withCtx, createBlock, createCommentVNode } from 'vue';
2
1
  import { isNil } from 'lodash-unified';
3
- import { ArrowDown, Minus, ArrowUp, Plus } from '@element-plus/icons-vue';
4
- import { ElInput } from '../../input/index.mjs';
5
- import { ElIcon } from '../../icon/index.mjs';
6
- import '../../form/index.mjs';
7
- import '../../../directives/index.mjs';
8
2
  import '../../../hooks/index.mjs';
9
3
  import '../../../utils/index.mjs';
10
4
  import '../../../constants/index.mjs';
11
- import { inputNumberProps, inputNumberEmits } from './input-number.mjs';
12
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
13
- import { useLocale } from '../../../hooks/use-locale/index.mjs';
14
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
15
- import { useFormItem } from '../../form/src/hooks/use-form-item.mjs';
16
- import { isNumber, isUndefined } from '../../../utils/types.mjs';
17
- import { debugWarn, throwError } from '../../../utils/error.mjs';
18
- import { useFormSize, useFormDisabled } from '../../form/src/hooks/use-form-common-props.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';
5
+ import { buildProps } from '../../../utils/vue/props/runtime.mjs';
6
+ import { useSizeProp } from '../../../hooks/use-size/index.mjs';
7
+ import { isNumber } from '../../../utils/types.mjs';
8
+ import { useAriaProps } from '../../../hooks/use-aria/index.mjs';
9
+ import { CHANGE_EVENT, INPUT_EVENT, UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
22
10
 
23
- const __default__ = defineComponent({
24
- name: "ElInputNumber"
11
+ const inputNumberProps = buildProps({
12
+ id: {
13
+ type: String,
14
+ default: void 0
15
+ },
16
+ step: {
17
+ type: Number,
18
+ default: 1
19
+ },
20
+ stepStrictly: Boolean,
21
+ max: {
22
+ type: Number,
23
+ default: Number.POSITIVE_INFINITY
24
+ },
25
+ min: {
26
+ type: Number,
27
+ default: Number.NEGATIVE_INFINITY
28
+ },
29
+ modelValue: Number,
30
+ readonly: Boolean,
31
+ disabled: Boolean,
32
+ size: useSizeProp,
33
+ controls: {
34
+ type: Boolean,
35
+ default: true
36
+ },
37
+ controlsPosition: {
38
+ type: String,
39
+ default: "",
40
+ values: ["", "right"]
41
+ },
42
+ valueOnClear: {
43
+ type: [String, Number, null],
44
+ validator: (val) => val === null || isNumber(val) || ["min", "max"].includes(val),
45
+ default: null
46
+ },
47
+ name: String,
48
+ placeholder: String,
49
+ precision: {
50
+ type: Number,
51
+ validator: (val) => val >= 0 && val === Number.parseInt(`${val}`, 10)
52
+ },
53
+ validateEvent: {
54
+ type: Boolean,
55
+ default: true
56
+ },
57
+ ...useAriaProps(["ariaLabel"])
25
58
  });
26
- const _sfc_main = /* @__PURE__ */ defineComponent({
27
- ...__default__,
28
- props: inputNumberProps,
29
- emits: inputNumberEmits,
30
- setup(__props, { expose, emit }) {
31
- const props = __props;
32
- const { t } = useLocale();
33
- const ns = useNamespace("input-number");
34
- const input = ref();
35
- const data = reactive({
36
- currentValue: props.modelValue,
37
- userInput: null
38
- });
39
- const { formItem } = useFormItem();
40
- const minDisabled = computed(() => isNumber(props.modelValue) && props.modelValue <= props.min);
41
- const maxDisabled = computed(() => isNumber(props.modelValue) && props.modelValue >= props.max);
42
- const numPrecision = computed(() => {
43
- const stepPrecision = getPrecision(props.step);
44
- if (!isUndefined(props.precision)) {
45
- if (stepPrecision > props.precision) {
46
- debugWarn("InputNumber", "precision should not be less than the decimal places of step");
47
- }
48
- return props.precision;
49
- } else {
50
- return Math.max(getPrecision(props.modelValue), stepPrecision);
51
- }
52
- });
53
- const controlsAtRight = computed(() => {
54
- return props.controls && props.controlsPosition === "right";
55
- });
56
- const inputNumberSize = useFormSize();
57
- const inputNumberDisabled = useFormDisabled();
58
- const displayValue = computed(() => {
59
- if (data.userInput !== null) {
60
- return data.userInput;
61
- }
62
- let currentValue = data.currentValue;
63
- if (isNil(currentValue))
64
- return "";
65
- if (isNumber(currentValue)) {
66
- if (Number.isNaN(currentValue))
67
- return "";
68
- if (!isUndefined(props.precision)) {
69
- currentValue = currentValue.toFixed(props.precision);
70
- }
71
- }
72
- return currentValue;
73
- });
74
- const toPrecision = (num, pre) => {
75
- if (isUndefined(pre))
76
- pre = numPrecision.value;
77
- if (pre === 0)
78
- return Math.round(num);
79
- let snum = String(num);
80
- const pointPos = snum.indexOf(".");
81
- if (pointPos === -1)
82
- return num;
83
- const nums = snum.replace(".", "").split("");
84
- const datum = nums[pointPos + pre];
85
- if (!datum)
86
- return num;
87
- const length = snum.length;
88
- if (snum.charAt(length - 1) === "5") {
89
- snum = `${snum.slice(0, Math.max(0, length - 1))}6`;
90
- }
91
- return Number.parseFloat(Number(snum).toFixed(pre));
92
- };
93
- const getPrecision = (value) => {
94
- if (isNil(value))
95
- return 0;
96
- const valueString = value.toString();
97
- const dotPosition = valueString.indexOf(".");
98
- let precision = 0;
99
- if (dotPosition !== -1) {
100
- precision = valueString.length - dotPosition - 1;
101
- }
102
- return precision;
103
- };
104
- const ensurePrecision = (val, coefficient = 1) => {
105
- if (!isNumber(val))
106
- return data.currentValue;
107
- return toPrecision(val + props.step * coefficient);
108
- };
109
- const increase = () => {
110
- if (props.readonly || inputNumberDisabled.value || maxDisabled.value)
111
- return;
112
- const value = Number(displayValue.value) || 0;
113
- const newVal = ensurePrecision(value);
114
- setCurrentValue(newVal);
115
- emit(INPUT_EVENT, data.currentValue);
116
- setCurrentValueToModelValue();
117
- };
118
- const decrease = () => {
119
- if (props.readonly || inputNumberDisabled.value || minDisabled.value)
120
- return;
121
- const value = Number(displayValue.value) || 0;
122
- const newVal = ensurePrecision(value, -1);
123
- setCurrentValue(newVal);
124
- emit(INPUT_EVENT, data.currentValue);
125
- setCurrentValueToModelValue();
126
- };
127
- const verifyValue = (value, update) => {
128
- const { max, min, step, precision, stepStrictly, valueOnClear } = props;
129
- if (max < min) {
130
- throwError("InputNumber", "min should not be greater than max.");
131
- }
132
- let newVal = Number(value);
133
- if (isNil(value) || Number.isNaN(newVal)) {
134
- return null;
135
- }
136
- if (value === "") {
137
- if (valueOnClear === null) {
138
- return null;
139
- }
140
- newVal = isString(valueOnClear) ? { min, max }[valueOnClear] : valueOnClear;
141
- }
142
- if (stepStrictly) {
143
- newVal = toPrecision(Math.round(newVal / step) * step, precision);
144
- }
145
- if (!isUndefined(precision)) {
146
- newVal = toPrecision(newVal, precision);
147
- }
148
- if (newVal > max || newVal < min) {
149
- newVal = newVal > max ? max : min;
150
- update && emit(UPDATE_MODEL_EVENT, newVal);
151
- }
152
- return newVal;
153
- };
154
- const setCurrentValue = (value, emitChange = true) => {
155
- var _a;
156
- const oldVal = data.currentValue;
157
- const newVal = verifyValue(value);
158
- if (!emitChange) {
159
- emit(UPDATE_MODEL_EVENT, newVal);
160
- return;
161
- }
162
- if (oldVal === newVal && value)
163
- return;
164
- data.userInput = null;
165
- emit(UPDATE_MODEL_EVENT, newVal);
166
- if (oldVal !== newVal) {
167
- emit(CHANGE_EVENT, newVal, oldVal);
168
- }
169
- if (props.validateEvent) {
170
- (_a = formItem == null ? void 0 : formItem.validate) == null ? void 0 : _a.call(formItem, "change").catch((err) => debugWarn(err));
171
- }
172
- data.currentValue = newVal;
173
- };
174
- const handleInput = (value) => {
175
- data.userInput = value;
176
- const newVal = value === "" ? null : Number(value);
177
- emit(INPUT_EVENT, newVal);
178
- setCurrentValue(newVal, false);
179
- };
180
- const handleInputChange = (value) => {
181
- const newVal = value !== "" ? Number(value) : "";
182
- if (isNumber(newVal) && !Number.isNaN(newVal) || value === "") {
183
- setCurrentValue(newVal);
184
- }
185
- setCurrentValueToModelValue();
186
- data.userInput = null;
187
- };
188
- const focus = () => {
189
- var _a, _b;
190
- (_b = (_a = input.value) == null ? void 0 : _a.focus) == null ? void 0 : _b.call(_a);
191
- };
192
- const blur = () => {
193
- var _a, _b;
194
- (_b = (_a = input.value) == null ? void 0 : _a.blur) == null ? void 0 : _b.call(_a);
195
- };
196
- const handleFocus = (event) => {
197
- emit("focus", event);
198
- };
199
- const handleBlur = (event) => {
200
- var _a;
201
- data.userInput = null;
202
- emit("blur", event);
203
- if (props.validateEvent) {
204
- (_a = formItem == null ? void 0 : formItem.validate) == null ? void 0 : _a.call(formItem, "blur").catch((err) => debugWarn(err));
205
- }
206
- };
207
- const setCurrentValueToModelValue = () => {
208
- if (data.currentValue !== props.modelValue) {
209
- data.currentValue = props.modelValue;
210
- }
211
- };
212
- const handleWheel = (e) => {
213
- if (document.activeElement === e.target)
214
- e.preventDefault();
215
- };
216
- watch(() => props.modelValue, (value, oldValue) => {
217
- const newValue = verifyValue(value, true);
218
- if (data.userInput === null && newValue !== oldValue) {
219
- data.currentValue = newValue;
220
- }
221
- }, { immediate: true });
222
- onMounted(() => {
223
- var _a;
224
- const { min, max, modelValue } = props;
225
- const innerInput = (_a = input.value) == null ? void 0 : _a.input;
226
- innerInput.setAttribute("role", "spinbutton");
227
- if (Number.isFinite(max)) {
228
- innerInput.setAttribute("aria-valuemax", String(max));
229
- } else {
230
- innerInput.removeAttribute("aria-valuemax");
231
- }
232
- if (Number.isFinite(min)) {
233
- innerInput.setAttribute("aria-valuemin", String(min));
234
- } else {
235
- innerInput.removeAttribute("aria-valuemin");
236
- }
237
- innerInput.setAttribute("aria-valuenow", data.currentValue || data.currentValue === 0 ? String(data.currentValue) : "");
238
- innerInput.setAttribute("aria-disabled", String(inputNumberDisabled.value));
239
- if (!isNumber(modelValue) && modelValue != null) {
240
- let val = Number(modelValue);
241
- if (Number.isNaN(val)) {
242
- val = null;
243
- }
244
- emit(UPDATE_MODEL_EVENT, val);
245
- }
246
- innerInput.addEventListener("wheel", handleWheel, { passive: false });
247
- });
248
- onUpdated(() => {
249
- var _a, _b;
250
- const innerInput = (_a = input.value) == null ? void 0 : _a.input;
251
- innerInput == null ? void 0 : innerInput.setAttribute("aria-valuenow", `${(_b = data.currentValue) != null ? _b : ""}`);
252
- });
253
- expose({
254
- focus,
255
- blur
256
- });
257
- return (_ctx, _cache) => {
258
- return openBlock(), createElementBlock("div", {
259
- class: normalizeClass([
260
- unref(ns).b(),
261
- unref(ns).m(unref(inputNumberSize)),
262
- unref(ns).is("disabled", unref(inputNumberDisabled)),
263
- unref(ns).is("without-controls", !_ctx.controls),
264
- unref(ns).is("controls-right", unref(controlsAtRight))
265
- ]),
266
- onDragstart: withModifiers(() => {
267
- }, ["prevent"])
268
- }, [
269
- _ctx.controls ? withDirectives((openBlock(), createElementBlock("span", {
270
- key: 0,
271
- role: "button",
272
- "aria-label": unref(t)("el.inputNumber.decrease"),
273
- class: normalizeClass([unref(ns).e("decrease"), unref(ns).is("disabled", unref(minDisabled))]),
274
- onKeydown: withKeys(decrease, ["enter"])
275
- }, [
276
- renderSlot(_ctx.$slots, "decrease-icon", {}, () => [
277
- createVNode(unref(ElIcon), null, {
278
- default: withCtx(() => [
279
- unref(controlsAtRight) ? (openBlock(), createBlock(unref(ArrowDown), { key: 0 })) : (openBlock(), createBlock(unref(Minus), { key: 1 }))
280
- ]),
281
- _: 1
282
- })
283
- ])
284
- ], 42, ["aria-label", "onKeydown"])), [
285
- [unref(vRepeatClick), decrease]
286
- ]) : createCommentVNode("v-if", true),
287
- _ctx.controls ? withDirectives((openBlock(), createElementBlock("span", {
288
- key: 1,
289
- role: "button",
290
- "aria-label": unref(t)("el.inputNumber.increase"),
291
- class: normalizeClass([unref(ns).e("increase"), unref(ns).is("disabled", unref(maxDisabled))]),
292
- onKeydown: withKeys(increase, ["enter"])
293
- }, [
294
- renderSlot(_ctx.$slots, "increase-icon", {}, () => [
295
- createVNode(unref(ElIcon), null, {
296
- default: withCtx(() => [
297
- unref(controlsAtRight) ? (openBlock(), createBlock(unref(ArrowUp), { key: 0 })) : (openBlock(), createBlock(unref(Plus), { key: 1 }))
298
- ]),
299
- _: 1
300
- })
301
- ])
302
- ], 42, ["aria-label", "onKeydown"])), [
303
- [unref(vRepeatClick), increase]
304
- ]) : createCommentVNode("v-if", true),
305
- createVNode(unref(ElInput), {
306
- id: _ctx.id,
307
- ref_key: "input",
308
- ref: input,
309
- type: "number",
310
- step: _ctx.step,
311
- "model-value": unref(displayValue),
312
- placeholder: _ctx.placeholder,
313
- readonly: _ctx.readonly,
314
- disabled: unref(inputNumberDisabled),
315
- size: unref(inputNumberSize),
316
- max: _ctx.max,
317
- min: _ctx.min,
318
- name: _ctx.name,
319
- "aria-label": _ctx.ariaLabel,
320
- "validate-event": false,
321
- onKeydown: [
322
- withKeys(withModifiers(increase, ["prevent"]), ["up"]),
323
- withKeys(withModifiers(decrease, ["prevent"]), ["down"])
324
- ],
325
- onBlur: handleBlur,
326
- onFocus: handleFocus,
327
- onInput: handleInput,
328
- onChange: handleInputChange
329
- }, null, 8, ["id", "step", "model-value", "placeholder", "readonly", "disabled", "size", "max", "min", "name", "aria-label", "onKeydown"])
330
- ], 42, ["onDragstart"]);
331
- };
332
- }
333
- });
334
- var InputNumber = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "input-number.vue"]]);
59
+ const inputNumberEmits = {
60
+ [CHANGE_EVENT]: (cur, prev) => prev !== cur,
61
+ blur: (e) => e instanceof FocusEvent,
62
+ focus: (e) => e instanceof FocusEvent,
63
+ [INPUT_EVENT]: (val) => isNumber(val) || isNil(val),
64
+ [UPDATE_MODEL_EVENT]: (val) => isNumber(val) || isNil(val)
65
+ };
335
66
 
336
- export { InputNumber as default };
67
+ export { inputNumberEmits, inputNumberProps };
337
68
  //# sourceMappingURL=input-number2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-number2.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.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 <slot name=\"decrease-icon\">\n <el-icon>\n <arrow-down v-if=\"controlsAtRight\" />\n <minus v-else />\n </el-icon>\n </slot>\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 <slot name=\"increase-icon\">\n <el-icon>\n <arrow-up v-if=\"controlsAtRight\" />\n <plus v-else />\n </el-icon>\n </slot>\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 :min=\"min\"\n :name=\"name\"\n :aria-label=\"ariaLabel\"\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 { ArrowDown, ArrowUp, Minus, Plus } from '@element-plus/icons-vue'\nimport { ElInput } from '@code-monkey-ui/components/input'\nimport { ElIcon } from '@code-monkey-ui/components/icon'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@code-monkey-ui/components/form'\nimport { vRepeatClick } from '@code-monkey-ui/directives'\nimport { useLocale, useNamespace } from '@code-monkey-ui/hooks'\nimport {\n debugWarn,\n isNumber,\n isString,\n isUndefined,\n throwError,\n} from '@code-monkey-ui/utils'\nimport {\n CHANGE_EVENT,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@code-monkey-ui/constants'\nimport { inputNumberEmits, inputNumberProps } from './input-number'\n\nimport type { InputInstance } from '@code-monkey-ui/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 () => isNumber(props.modelValue) && props.modelValue <= props.min\n)\nconst maxDisabled = computed(\n () => isNumber(props.modelValue) && 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 = useFormSize()\nconst inputNumberDisabled = useFormDisabled()\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 setCurrentValueToModelValue()\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 setCurrentValueToModelValue()\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 if (max < min) {\n throwError('InputNumber', 'min should not be greater than max.')\n }\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 = (\n value: number | string | null | undefined,\n emitChange = true\n) => {\n const oldVal = data.currentValue\n const newVal = verifyValue(value)\n if (!emitChange) {\n emit(UPDATE_MODEL_EVENT, newVal!)\n return\n }\n if (oldVal === newVal && value) return\n data.userInput = null\n emit(UPDATE_MODEL_EVENT, newVal!)\n if (oldVal !== newVal) {\n emit(CHANGE_EVENT, newVal!, oldVal!)\n }\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 const newVal = value === '' ? null : Number(value)\n emit(INPUT_EVENT, newVal)\n setCurrentValue(newVal, false)\n}\nconst handleInputChange = (value: string) => {\n const newVal = value !== '' ? Number(value) : ''\n if ((isNumber(newVal) && !Number.isNaN(newVal)) || value === '') {\n setCurrentValue(newVal)\n }\n setCurrentValueToModelValue()\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 data.userInput = null\n emit('blur', event)\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n}\n\nconst setCurrentValueToModelValue = () => {\n if (data.currentValue !== props.modelValue) {\n data.currentValue = props.modelValue\n }\n}\nconst handleWheel = (e: WheelEvent) => {\n if (document.activeElement === e.target) e.preventDefault()\n}\n\nwatch(\n () => props.modelValue,\n (value, oldValue) => {\n const newValue = verifyValue(value, true)\n if (data.userInput === null && newValue !== oldValue) {\n data.currentValue = newValue\n }\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(\n 'aria-valuenow',\n data.currentValue || data.currentValue === 0\n ? String(data.currentValue)\n : ''\n )\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 innerInput.addEventListener('wheel', handleWheel, { passive: false })\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":";;;;;;;;;;;;;;;;;;;;;;mCA8Fc,CAAA;AAAA,EACZ,IAAM,EAAA,eAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,EAAE,CAAE,EAAA,GAAI,SAAU,EAAA,CAAA;AACxB,IAAM,MAAA,EAAA,GAAK,aAAa,cAAc,CAAA,CAAA;AACtC,IAAA,MAAM,QAAQ,GAAmB,EAAA,CAAA;AAMjC,IAAA,MAAM,OAAO,QAAe,CAAA;AAAA,MAC1B,cAAc,KAAM,CAAA,UAAA;AAAA,MACpB,SAAW,EAAA,IAAA;AAAA,KACZ,CAAA,CAAA;AAED,IAAM,MAAA,EAAE,QAAS,EAAA,GAAI,WAAY,EAAA,CAAA;AAEjC,IAAA,MAAM,WAAc,GAAA,QAAA,CAAA,MAAA,QAAA,CAAA,KAAA,CAAA,UAAA,CAAA,IAAA,KAAA,CAAA,UAAA,IAAA,KAAA,CAAA,GAAA,CAAA,CAAA;AAAA,IAAA,iBACH,GAAA,eAAqB,QAAA,CAAM,gBAAoB,CAAA,IAAA,KAAA,CAAA,UAAA,IAAA,KAAA,CAAA,GAAA,CAAA,CAAA;AAAA,IAChE,MAAA,YAAA,GAAA,QAAA,CAAA,MAAA;AACA,MAAA,MAAoB,aAAA,GAAA,YAAA,CAAA,KAAA,CAAA,IAAA,CAAA,CAAA;AAAA,MAClB,gBAAe,CAAA,eAAqB,CAAA,EAAA;AAA0B,QAChE,IAAA,aAAA,GAAA,KAAA,CAAA,SAAA,EAAA;AAEA,UAAM,SAAA,CAAA,eAA8B,8DAAA,CAAA,CAAA;AAClC,SAAM;AACN,QAAA,OAAK,KAAA,CAAA,SAAkB,CAAA;AACrB,OAAI,MAAA;AACF,QAAA,OAAA,IAAA,CAAA,GAAA,CAAA,YAAA,CAAA,KAAA,CAAA,UAAA,CAAA,EAAA,aAAA,CAAA,CAAA;AAAA,OACE;AAAA,KACA,CAAA,CAAA;AAAA,IACF,MAAA,eAAA,GAAA,QAAA,CAAA,MAAA;AAAA,MACF,OAAA,KAAA,CAAA,QAAA,IAAA,KAAA,CAAA,gBAAA,KAAA,OAAA,CAAA;AACA,KAAA,CAAA,CAAA;AAAa,IAAA,MACR,eAAA,GAAA,WAAA,EAAA,CAAA;AACL,IAAA,MAAA,mBAAgB,GAAA,eAAmB,EAAA,CAAA;AAA0B,IAC/D,MAAA,YAAA,GAAA,QAAA,CAAA,MAAA;AAAA,MACD,IAAA,IAAA,CAAA,SAAA,KAAA,IAAA,EAAA;AACD,QAAM,OAAA,IAAA,CAAA;AACJ,OAAO;AAA6C,MACrD,IAAA,YAAA,GAAA,IAAA,CAAA,YAAA,CAAA;AAED,MAAA,IAAM,kBAAkB,CAAY;AACpC,QAAA;AAEA,MAAM,IAAA,QAAA,CAAA,eAAwB;AAC5B,QAAI,IAAA,yBAAyB,CAAA;AAC3B,UAAA,OAAY,EAAA,CAAA;AAAA,QACd,IAAA,CAAA,WAAA,CAAA,KAAA,CAAA,SAAA,CAAA,EAAA;AACA,UAAI,eAAmD,YAAK,CAAA,OAAA,CAAA,KAAA,CAAA,SAAA,CAAA,CAAA;AAC5D,SAAI;AACJ,OAAI;AACF,MAAA,OAAW,YAAM,CAAY;AAC7B,KAAA,CAAA,CAAA;AACE,IAAe,MAAA,WAAA,GAAA,CAAA,GAAA,EAAA,GAAA,KAAa;AAAuB,MACrD,IAAA,WAAA,CAAA,GAAA,CAAA;AAAA,QACF,GAAA,GAAA,YAAA,CAAA,KAAA,CAAA;AACA,MAAO,IAAA,GAAA,KAAA,CAAA;AAAA,QACR,OAAA,IAAA,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA;AACD,MAAM,IAAA,IAAA,GAAA,MAAA,CAAc,GAAC,CAAA,CAAA;AACnB,MAAA,MAAgB,QAAA,GAAA,IAAM,CAAA,OAAmB,CAAA,GAAA,CAAA,CAAA;AACzC,MAAA,IAAI,QAAQ,KAAU,CAAA,CAAA;AACtB,QAAI,OAAA;AACJ,MAAM,MAAA,IAAA,GAAA,IAAW,CAAK,OAAA,CAAA,GAAA,EAAW,EAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CAAA,CAAA;AACjC,MAAI,MAAA,KAAA,GAAA,aAAwB,GAAA,GAAA,CAAA,CAAA;AAC5B,MAAA,IAAA,CAAA;AACA,QAAM,OAAA,GAAA,CAAA;AACN,MAAI,YAAe,GAAA,IAAA,CAAA,MAAA,CAAA;AACnB,MAAA,IAAA,WAAe,CAAK,MAAA,GAAA,CAAA,CAAA,KAAA,GAAA,EAAA;AACpB,QAAA,IAAS,GAAA,CAAA,EAAA,IAAO,CAAS,KAAA,CAAA,CAAA,EAAC,QAAW,CAAA,CAAA,EAAA,MAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACnC,OAAO;AAAyC,MAClD,OAAA,MAAA,CAAA,UAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACA,KAAA,CAAA;AAAkD,IACpD,MAAA,YAAA,GAAA,CAAA,KAAA,KAAA;AACA,MAAM,IAAA,KAAA,CAAA,KAAA,CAAA;AACJ,QAAI,OAAA,CAAM,CAAK;AACf,MAAM,MAAA,WAAA,GAAc,MAAM,QAAS,EAAA,CAAA;AACnC,MAAM,MAAA,WAAA,GAAc,WAAY,CAAA,OAAA,CAAQ,GAAG,CAAA,CAAA;AAC3C,MAAA,IAAI,SAAY,GAAA,CAAA,CAAA;AAChB,MAAA,IAAI,gBAAgB,CAAI,CAAA,EAAA;AACtB,QAAY,SAAA,GAAA,WAAA,CAAY,SAAS,WAAc,GAAA,CAAA,CAAA;AAAA,OACjD;AACA,MAAO,OAAA,SAAA,CAAA;AAAA,KACT,CAAA;AACA,IAAA,MAAM,eAAkB,GAAA,CAAC,GAAa,EAAA,WAAA,GAAsB,CAAM,KAAA;AAChE,MAAA,IAAI,CAAC,QAAA,CAAS,GAAG,CAAA;AAEjB,QAAA,OAAmB,IAAA,CAAA,YAAY,CAAA;AAAkB,MACnD,OAAA,WAAA,CAAA,GAAA,GAAA,KAAA,CAAA,IAAA,GAAA,WAAA,CAAA,CAAA;AACA,KAAA,CAAA;AACE,IAAA,MAAI,QAAM,GAAA,MAAA;AACV,MAAA,IAAA,KAAc,CAAA,QAAA,IAAoB,mBAAU,CAAA,KAAA,IAAA,WAAA,CAAA,KAAA;AAC5C,QAAM,OAAA;AACN,MAAA,MAAA,KAAA,GAAA,MAAsB,CAAA,YAAA,CAAA,KAAA,CAAA,IAAA,CAAA,CAAA;AACtB,MAAK,MAAA,MAAA,GAAA,eAA8B,CAAA,KAAA,CAAA,CAAA;AACnC,MAA4B,eAAA,CAAA,MAAA,CAAA,CAAA;AAAA,MAC9B,IAAA,CAAA,WAAA,EAAA,IAAA,CAAA,YAAA,CAAA,CAAA;AACA,MAAA,2BAAuB,EAAA,CAAA;AACrB,KAAA,CAAA;AACA,IAAA,MAAA,QAAc,GAAA,MAAO;AACrB,MAAM,IAAA,KAAA,CAAA,QAAyB,IAAA,mBAAS,CAAA,KAAA,IAAA,WAAA,CAAA,KAAA;AACxC,QAAA,OAAA;AACA,MAAK,MAAA,KAAA,GAAA,mBAA8B,CAAA,KAAA,CAAA,IAAA,CAAA,CAAA;AACnC,MAA4B,MAAA,MAAA,GAAA,eAAA,CAAA,KAAA,EAAA,CAAA,CAAA,CAAA,CAAA;AAAA,MAC9B,eAAA,CAAA,MAAA,CAAA,CAAA;AACA,MAAM,IAAA,CAAA,WAAA,EAAc,IAClB,CAAA,YAE8B,CAAA,CAAA;AAC9B,MAAA,2BAAmC,EAAA,CAAA;AACnC,KAAA,CAAA;AACE,IAAA,MAAA,4BAA+D,KAAA;AAAA,MACjE,MAAA,EAAA,GAAA,EAAA,GAAA,EAAA,IAAA,EAAA,SAAA,EAAA,YAAA,EAAA,YAAA,EAAA,GAAA,KAAA,CAAA;AACA,MAAI,IAAA,GAAA,GAAA,GAAS;AACb,QAAA,UAAe,CAAA,aAAY,EAAA,qCAAe,CAAA,CAAA;AACxC,OAAO;AAAA,MACT,IAAA,MAAA,GAAA,MAAA,CAAA,KAAA,CAAA,CAAA;AACA,MAAA,IAAI,WAAc,CAAA,IAAA,MAAA,CAAA,KAAA,CAAA,MAAA,CAAA,EAAA;AAChB,QAAA;AACE,OAAO;AAAA,MACT,IAAA,KAAA,KAAA,EAAA,EAAA;AACA,QAAS,IAAA,YAAA;AAAsD,UACjE,OAAA,IAAA,CAAA;AACA,SAAA;AACE,QAAA,MAAA,GAAS,qBAAiB,CAAA,UAAe,GAAI,EAAA,CAAA,YAAmB,CAAA,GAAA,YAAA,CAAA;AAAA,OAClE;AACA,MAAI,IAAA,YAAa,EAAA;AACf,QAAS,MAAA,GAAA,WAAA,CAAY,UAAiB,CAAA,MAAA,GAAA,IAAA,CAAA,GAAA,IAAA,EAAA,SAAA,CAAA,CAAA;AAAA,OACxC;AACA,MAAI,IAAA,CAAA,WAAgB,CAAA,SAAA,CAAA,EAAS;AAC3B,QAAS,MAAA,GAAA,kBAAqB,EAAA,SAAA,CAAA,CAAA;AAC9B,OAAU;AAA+B,MAC3C,IAAA,MAAA,GAAA,GAAA,IAAA,MAAA,GAAA,GAAA,EAAA;AACA,QAAO,MAAA,GAAA,MAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,CAAA;AAAA,QACT,MAAA,IAAA,IAAA,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAA;AACA,OAAA;AAIE,MAAA;AACA,KAAM,CAAA;AACN,IAAA,MAAI,eAAa,GAAA,CAAA,KAAA,EAAA,UAAA,GAAA,IAAA,KAAA;AACf,MAAA,IAAA,EAAA,CAAK;AACL,MAAA,MAAA,MAAA,GAAA,IAAA,CAAA,YAAA,CAAA;AAAA,MACF,MAAA,MAAA,GAAA,WAAA,CAAA,KAAA,CAAA,CAAA;AACA,MAAI,IAAA,CAAA,UAAW;AACf,QAAA,IAAiB,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAA;AACjB,QAAA;AACA,OAAA;AACE,MAAK,IAAA,MAAA,KAAA,MAAc,SAAgB;AAAA,QACrC,OAAA;AACA,MAAA,IAAI,UAAqB,GAAA,IAAA,CAAA;AACvB,MAAU,IAAA,CAAA,kBAAW,QAAQ,CAAE,CAAA;AAA6B,MAC9D,IAAA,MAAA,KAAA,MAAA,EAAA;AACA,QAAA,IAAoB,CAAA,YAAA,EAAA,MAAA,EAAA,MAAA,CAAA,CAAA;AAAA,OACtB;AACA,MAAM,IAAA,KAAA,CAAA,aAAiC,EAAA;AACrC,QAAA,CAAA,EAAK,GAAY,QAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,QAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,QAAA,EAAA,QAAA,CAAA,CAAA,KAAA,CAAA,CAAA,GAAA,KAAA,SAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACjB,OAAA;AACA,MAAA,IAAA,CAAK,eAAmB,MAAA,CAAA;AACxB,KAAA,CAAA;AAA6B,IAC/B,MAAA,WAAA,GAAA,CAAA,KAAA,KAAA;AACA,MAAM,IAAA,CAAA,SAAA,GAAA,KAAA,CAAA;AACJ,MAAA,MAAM,MAAS,GAAA,KAAA,KAAU,EAAK,GAAA,IAAA,GAAO,MAAS,CAAA,KAAA,CAAA,CAAA;AAC9C,MAAK,IAAA,CAAA,mBAAoB,CAAC;AACxB,MAAA,eAAA,CAAA,MAAsB,EAAA,KAAA,CAAA,CAAA;AAAA,KACxB,CAAA;AACA,IAA4B,MAAA,iBAAA,GAAA,CAAA,KAAA,KAAA;AAC5B,MAAA,MAAiB,MAAA,GAAA,KAAA,KAAA,EAAA,GAAA,MAAA,CAAA,KAAA,CAAA,GAAA,EAAA,CAAA;AAAA,MACnB,IAAA,QAAA,CAAA,MAAA,CAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,MAAA,CAAA,IAAA,KAAA,KAAA,EAAA,EAAA;AAEA,QAAA,eAAoB,CAAA,MAAA,CAAA,CAAA;AAClB,OAAA;AAAqB,MACvB,2BAAA,EAAA,CAAA;AAEA,MAAA,IAAM,UAAa,GAAA,IAAA,CAAA;AACjB,KAAA,CAAA;AAAoB,IACtB,MAAA,KAAA,GAAA,MAAA;AAEA,MAAM,IAAA,EAAA,EAAA,EAAA,CAAA;AACJ,MAAA,CAAA,EAAA,cAAmB,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA;AAAA,KACrB,CAAA;AAEA,IAAM,MAAA,IAAA,GAAA,MAAa;AACjB,MAAA,IAAA,EAAiB,EAAA,EAAA,CAAA;AACjB,MAAA,CAAA,EAAA,cAAkB,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA;AAClB,KAAA,CAAA;AACE,IAAU,MAAA,WAAA,GAAA,CAAA,UAAiB;AAA+B,MAC5D,IAAA,CAAA,OAAA,EAAA,KAAA,CAAA,CAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAM;AACJ,MAAI,IAAA,EAAA,CAAA;AACF,MAAA,IAAA,CAAA,iBAAoB;AAAM,MAC5B,IAAA,CAAA,MAAA,EAAA,KAAA,CAAA,CAAA;AAAA,MACF,IAAA,KAAA,CAAA,aAAA,EAAA;AACA,QAAM,CAAA,EAAA,GAAA,QAAA,IAAiC,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,QAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,QAAA,EAAA,MAAA,CAAA,CAAA,KAAA,CAAA,CAAA,GAAA,KAAA,SAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACrC,OAAA;AAA0D,KAC5D,CAAA;AAEA,IAAA,MAAA,2BAAA,GAAA,MAAA;AAAA,MACE,QAAY,CAAA,YAAA,KAAA,KAAA,CAAA,UAAA,EAAA;AAAA,yBACS,GAAA,KAAA,CAAA,UAAA,CAAA;AACnB,OAAM;AACN,KAAA,CAAA;AACE,IAAA,MAAA,WAAoB,GAAA,CAAA,CAAA,KAAA;AAAA,MACtB,IAAA,QAAA,CAAA,aAAA,KAAA,CAAA,CAAA,MAAA;AAAA,QACF,CAAA,CAAA,cAAA,EAAA,CAAA;AAAA,KACA,CAAA;AAAkB,IACpB,KAAA,CAAA,MAAA,KAAA,CAAA,UAAA,EAAA,CAAA,KAAA,EAAA,QAAA,KAAA;AACA,MAAA,MAAA,QAAgB,GAAA,WAAA,CAAA,KAAA,EAAA,IAAA,CAAA,CAAA;AACd,MAAA,IAAA,IAAQ,CAAA,SAAU,KAAA,IAAA,IAAe,QAAA,KAAA,QAAA,EAAA;AACjC,QAAM,IAAA,CAAA,YAAa,WAAa,CAAA;AAChC,OAAW;AACX,KAAI,EAAA,EAAA,SAAgB,EAAA,IAAA,EAAA,CAAA,CAAA;AAClB,IAAA,SAAA,CAAA,MAAwB;AAA4B,MACtD,IAAO,EAAA,CAAA;AACL,MAAA,MAAA,EAAA,GAAA,EAAW,iBAA+B,GAAA,KAAA,CAAA;AAAA,MAC5C,MAAA,UAAA,GAAA,CAAA,EAAA,GAAA,KAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,CAAA;AACA,MAAI,UAAA,CAAO,YAAY,CAAG,MAAA,EAAA,YAAA,CAAA,CAAA;AACxB,MAAA,IAAA,MAAA,CAAA,QAAwB,CAAA,GAAA,CAAA,EAAA;AAA4B,QAC/C,UAAA,CAAA,YAAA,CAAA,eAAA,EAAA,MAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACL,OAAA,MAAA;AAA0C,QAC5C,UAAA,CAAA,eAAA,CAAA,eAAA,CAAA,CAAA;AACA,OAAW;AAAA,MACT,IAAA,MAAA,CAAA,QAAA,CAAA,GAAA,CAAA,EAAA;AAAA,QACA,uBAA0B,CAAA,eAAA,EAAA,MACtB,CAAO,GAAA,CAAA,CAAA,CAAA;AACP,OACN,MAAA;AACA,QAAA,UAAwB,CAAA,eAAA,CAAA,eAAwB,CAAA,CAAA;AAChD,OAAA;AACE,MAAI,UAAA,CAAA,YAAsC,CAAA,eAAA,EAAA,IAAA,CAAA,YAAA,IAAA,IAAA,CAAA,YAAA,KAAA,CAAA,GAAA,MAAA,CAAA,IAAA,CAAA,YAAA,CAAA,GAAA,EAAA,CAAA,CAAA;AAC1C,MAAI,UAAA,CAAA,YAAmB,CAAA,eAAA,EAAA,MAAA,CAAA,mBAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AACrB,MAAM,IAAA,CAAA,QAAA,CAAA,UAAA,CAAA,IAAA,UAAA,IAAA,IAAA,EAAA;AAAA,QACR,IAAA,GAAA,GAAA,MAAA,CAAA,UAAA,CAAA,CAAA;AACA,QAAA,IAAA;AAA6B,UAC/B,GAAA,GAAA,IAAA,CAAA;AACA,SAAA;AAAoE,QACrE,IAAA,CAAA,kBAAA,EAAA,GAAA,CAAA,CAAA;AACD,OAAA;AACE,MAAM,UAAA,CAAA,gBAA0B,CAAA,OAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,KAAA,EAAA,CAAA,CAAA;AAChC,KAAA,CAAA,CAAA;AAAsE,IACxE,SAAC,CAAA,MAAA;AACD,MAAa,IAAA,EAAA,EAAA,EAAA,CAAA;AAAA,MAAA,MAAA,UAAA,GAAA,CAAA,EAAA,GAAA,KAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,CAAA;AAAA,MAEX,UAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,UAAA,CAAA,YAAA,CAAA,eAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,IAAA,CAAA,YAAA,KAAA,IAAA,GAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA;AAAA,KAAA,CAAA,CAAA;AAAA,IAEA,MAAA,CAAA;AAAA,MACD,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"input-number2.mjs","sources":["../../../../../../packages/components/input-number/src/input-number.ts"],"sourcesContent":["import { isNil } from 'lodash-unified'\nimport { useAriaProps, useSizeProp } from '@code-monkey-ui/hooks'\nimport { buildProps, isNumber } from '@code-monkey-ui/utils'\nimport {\n CHANGE_EVENT,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@code-monkey-ui/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type InputNumber from './input-number.vue'\n\nexport const inputNumberProps = buildProps({\n /**\n * @description same as `id` in native input\n */\n id: {\n type: String,\n default: undefined,\n },\n /**\n * @description incremental step\n */\n step: {\n type: Number,\n default: 1,\n },\n /**\n * @description whether input value can only be multiple of step\n */\n stepStrictly: Boolean,\n /**\n * @description the maximum allowed value\n */\n max: {\n type: Number,\n default: Number.POSITIVE_INFINITY,\n },\n /**\n * @description the minimum allowed value\n */\n min: {\n type: Number,\n default: Number.NEGATIVE_INFINITY,\n },\n /**\n * @description binding value\n */\n modelValue: Number,\n /**\n * @description same as `readonly` in native input\n */\n readonly: Boolean,\n /**\n * @description whether the component is disabled\n */\n disabled: Boolean,\n /**\n * @description size of the component\n */\n size: useSizeProp,\n /**\n * @description whether to enable the control buttons\n */\n controls: {\n type: Boolean,\n default: true,\n },\n /**\n * @description position of the control buttons\n */\n controlsPosition: {\n type: String,\n default: '',\n values: ['', 'right'],\n },\n /**\n * @description value should be set when input box is cleared\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 /**\n * @description same as `name` in native input\n */\n name: String,\n /**\n * @description same as `placeholder` in native input\n */\n placeholder: String,\n /**\n * @description precision of input value\n */\n precision: {\n type: Number,\n validator: (val: number) =>\n val >= 0 && val === Number.parseInt(`${val}`, 10),\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n ...useAriaProps(['ariaLabel']),\n} as const)\nexport type InputNumberProps = ExtractPropTypes<typeof inputNumberProps>\n\nexport const inputNumberEmits = {\n [CHANGE_EVENT]: (cur: number | undefined, prev: 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,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,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,EAAE,GAAG,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC;AAChC,CAAC,EAAE;AACS,MAAC,gBAAgB,GAAG;AAChC,EAAE,CAAC,YAAY,GAAG,CAAC,GAAG,EAAE,IAAI,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,11 +1,11 @@
1
1
  import '../../utils/index.mjs';
2
2
  import Menu from './src/menu.mjs';
3
3
  export { menuEmits, menuProps } from './src/menu.mjs';
4
- import MenuItem from './src/menu-item2.mjs';
4
+ import MenuItem from './src/menu-item.mjs';
5
5
  import MenuItemGroup from './src/menu-item-group2.mjs';
6
6
  import SubMenu from './src/sub-menu.mjs';
7
7
  export { subMenuProps } from './src/sub-menu.mjs';
8
- export { menuItemEmits, menuItemProps } from './src/menu-item.mjs';
8
+ export { menuItemEmits, menuItemProps } from './src/menu-item2.mjs';
9
9
  export { menuItemGroupProps } from './src/menu-item-group.mjs';
10
10
  import './src/types.mjs';
11
11
  import './src/instance.mjs';
@@ -1,20 +1,103 @@
1
+ import { defineComponent, getCurrentInstance, inject, toRef, computed, reactive, onMounted, onBeforeUnmount, resolveComponent, openBlock, createElementBlock, normalizeClass, createBlock, withCtx, renderSlot, createElementVNode, Fragment } from 'vue';
2
+ import { ElTooltip } from '../../tooltip/index.mjs';
1
3
  import '../../../utils/index.mjs';
2
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
3
- import { isString } from '@vue/shared';
4
+ import '../../../hooks/index.mjs';
5
+ import useMenu from './use-menu.mjs';
6
+ import { menuItemProps, menuItemEmits } from './menu-item2.mjs';
7
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
8
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
9
+ import { throwError } from '../../../utils/error.mjs';
4
10
 
5
- const menuItemProps = buildProps({
6
- index: {
7
- type: definePropType([String, null]),
8
- default: null
11
+ const COMPONENT_NAME = "ElMenuItem";
12
+ const _sfc_main = defineComponent({
13
+ name: COMPONENT_NAME,
14
+ components: {
15
+ ElTooltip
9
16
  },
10
- route: {
11
- type: definePropType([String, Object])
12
- },
13
- disabled: Boolean
17
+ props: menuItemProps,
18
+ emits: menuItemEmits,
19
+ setup(props, { emit }) {
20
+ const instance = getCurrentInstance();
21
+ const rootMenu = inject("rootMenu");
22
+ const nsMenu = useNamespace("menu");
23
+ const nsMenuItem = useNamespace("menu-item");
24
+ if (!rootMenu)
25
+ throwError(COMPONENT_NAME, "can not inject root menu");
26
+ const { parentMenu, indexPath } = useMenu(instance, toRef(props, "index"));
27
+ const subMenu = inject(`subMenu:${parentMenu.value.uid}`);
28
+ if (!subMenu)
29
+ throwError(COMPONENT_NAME, "can not inject sub menu");
30
+ const active = computed(() => props.index === rootMenu.activeIndex);
31
+ const item = reactive({
32
+ index: props.index,
33
+ indexPath,
34
+ active
35
+ });
36
+ const handleClick = () => {
37
+ if (!props.disabled) {
38
+ rootMenu.handleMenuItemClick({
39
+ index: props.index,
40
+ indexPath: indexPath.value,
41
+ route: props.route
42
+ });
43
+ emit("click", item);
44
+ }
45
+ };
46
+ onMounted(() => {
47
+ subMenu.addSubMenu(item);
48
+ rootMenu.addMenuItem(item);
49
+ });
50
+ onBeforeUnmount(() => {
51
+ subMenu.removeSubMenu(item);
52
+ rootMenu.removeMenuItem(item);
53
+ });
54
+ return {
55
+ parentMenu,
56
+ rootMenu,
57
+ active,
58
+ nsMenu,
59
+ nsMenuItem,
60
+ handleClick
61
+ };
62
+ }
14
63
  });
15
- const menuItemEmits = {
16
- click: (item) => isString(item.index) && Array.isArray(item.indexPath)
17
- };
64
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
65
+ const _component_el_tooltip = resolveComponent("el-tooltip");
66
+ return openBlock(), createElementBlock("li", {
67
+ class: normalizeClass([
68
+ _ctx.nsMenuItem.b(),
69
+ _ctx.nsMenuItem.is("active", _ctx.active),
70
+ _ctx.nsMenuItem.is("disabled", _ctx.disabled)
71
+ ]),
72
+ role: "menuitem",
73
+ tabindex: "-1",
74
+ onClick: _ctx.handleClick
75
+ }, [
76
+ _ctx.parentMenu.type.name === "ElMenu" && _ctx.rootMenu.props.collapse && _ctx.$slots.title ? (openBlock(), createBlock(_component_el_tooltip, {
77
+ key: 0,
78
+ effect: _ctx.rootMenu.props.popperEffect,
79
+ placement: "right",
80
+ "fallback-placements": ["left"],
81
+ persistent: ""
82
+ }, {
83
+ content: withCtx(() => [
84
+ renderSlot(_ctx.$slots, "title")
85
+ ]),
86
+ default: withCtx(() => [
87
+ createElementVNode("div", {
88
+ class: normalizeClass(_ctx.nsMenu.be("tooltip", "trigger"))
89
+ }, [
90
+ renderSlot(_ctx.$slots, "default")
91
+ ], 2)
92
+ ]),
93
+ _: 3
94
+ }, 8, ["effect"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
95
+ renderSlot(_ctx.$slots, "default"),
96
+ renderSlot(_ctx.$slots, "title")
97
+ ], 64))
98
+ ], 10, ["onClick"]);
99
+ }
100
+ var MenuItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "menu-item.vue"]]);
18
101
 
19
- export { menuItemEmits, menuItemProps };
102
+ export { MenuItem as default };
20
103
  //# sourceMappingURL=menu-item.mjs.map