code-monkey-ui 1.1.6 → 1.1.7-alpha.1

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 (551) hide show
  1. package/dist/index.full.js +8 -4
  2. package/dist/index.full.min.js +16 -16
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +17 -17
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +8 -4
  7. package/es/components/affix/index.mjs +2 -2
  8. package/es/components/affix/src/affix.mjs +117 -26
  9. package/es/components/affix/src/affix.mjs.map +1 -1
  10. package/es/components/affix/src/affix2.mjs +26 -117
  11. package/es/components/affix/src/affix2.mjs.map +1 -1
  12. package/es/components/autocomplete/index.mjs +2 -2
  13. package/es/components/autocomplete/src/autocomplete.mjs +361 -81
  14. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  15. package/es/components/autocomplete/src/autocomplete2.mjs +81 -361
  16. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  17. package/es/components/avatar/index.mjs +2 -2
  18. package/es/components/avatar/src/avatar.mjs +67 -32
  19. package/es/components/avatar/src/avatar.mjs.map +1 -1
  20. package/es/components/avatar/src/avatar2.mjs +32 -67
  21. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  22. package/es/components/backtop/index.mjs +2 -2
  23. package/es/components/backtop/src/backtop.mjs +54 -21
  24. package/es/components/backtop/src/backtop.mjs.map +1 -1
  25. package/es/components/backtop/src/backtop2.mjs +21 -54
  26. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  27. package/es/components/badge/index.mjs +2 -2
  28. package/es/components/badge/src/badge.mjs +55 -17
  29. package/es/components/badge/src/badge.mjs.map +1 -1
  30. package/es/components/badge/src/badge2.mjs +17 -55
  31. package/es/components/badge/src/badge2.mjs.map +1 -1
  32. package/es/components/breadcrumb/index.mjs +2 -2
  33. package/es/components/breadcrumb/src/breadcrumb.mjs +11 -36
  34. package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  35. package/es/components/breadcrumb/src/breadcrumb2.mjs +36 -11
  36. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  37. package/es/components/button/index.mjs +1 -1
  38. package/es/components/button/src/button-group.mjs +6 -30
  39. package/es/components/button/src/button-group.mjs.map +1 -1
  40. package/es/components/button/src/button-group2.mjs +30 -6
  41. package/es/components/button/src/button-group2.mjs.map +1 -1
  42. package/es/components/calendar/src/calendar2.mjs +1 -1
  43. package/es/components/calendar/src/date-table.mjs +33 -87
  44. package/es/components/calendar/src/date-table.mjs.map +1 -1
  45. package/es/components/calendar/src/date-table2.mjs +87 -33
  46. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  47. package/es/components/calendar/src/use-date-table.mjs +1 -1
  48. package/es/components/carousel/index.mjs +4 -4
  49. package/es/components/carousel/src/carousel-item.mjs +8 -69
  50. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  51. package/es/components/carousel/src/carousel-item2.mjs +69 -8
  52. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  53. package/es/components/carousel/src/carousel.mjs +56 -169
  54. package/es/components/carousel/src/carousel.mjs.map +1 -1
  55. package/es/components/carousel/src/carousel2.mjs +169 -56
  56. package/es/components/carousel/src/carousel2.mjs.map +1 -1
  57. package/es/components/cascader/index.mjs +2 -2
  58. package/es/components/cascader/src/cascader.mjs +626 -65
  59. package/es/components/cascader/src/cascader.mjs.map +1 -1
  60. package/es/components/cascader/src/cascader2.mjs +65 -626
  61. package/es/components/cascader/src/cascader2.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 +117 -50
  65. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  66. package/es/components/checkbox/src/checkbox2.mjs +50 -117
  67. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  68. package/es/components/collapse/index.mjs +2 -2
  69. package/es/components/collapse/src/collapse-item.mjs +14 -91
  70. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  71. package/es/components/collapse/src/collapse-item2.mjs +91 -14
  72. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  73. package/es/components/countdown/index.mjs +2 -2
  74. package/es/components/countdown/src/countdown.mjs +23 -74
  75. package/es/components/countdown/src/countdown.mjs.map +1 -1
  76. package/es/components/countdown/src/countdown2.mjs +74 -23
  77. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  78. package/es/components/dialog/src/dialog-content.mjs +29 -89
  79. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  80. package/es/components/dialog/src/dialog-content2.mjs +89 -29
  81. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  82. package/es/components/dialog/src/dialog.mjs +1 -1
  83. package/es/components/dialog/src/dialog2.mjs +1 -1
  84. package/es/components/divider/index.mjs +2 -2
  85. package/es/components/divider/src/divider.mjs +35 -17
  86. package/es/components/divider/src/divider.mjs.map +1 -1
  87. package/es/components/divider/src/divider2.mjs +17 -35
  88. package/es/components/divider/src/divider2.mjs.map +1 -1
  89. package/es/components/drawer/index.mjs +2 -2
  90. package/es/components/drawer/src/drawer.mjs +176 -26
  91. package/es/components/drawer/src/drawer.mjs.map +1 -1
  92. package/es/components/drawer/src/drawer2.mjs +26 -176
  93. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  94. package/es/components/dropdown/index.mjs +2 -2
  95. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  96. package/es/components/dropdown/src/dropdown-item.mjs +1 -1
  97. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  98. package/es/components/dropdown/src/dropdown.mjs +97 -306
  99. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  100. package/es/components/dropdown/src/dropdown2.mjs +306 -97
  101. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  102. package/es/components/dsh-cascader/src/dsh-cascader2.mjs +1 -1
  103. package/es/components/dsh-select/index.d.ts +1 -1
  104. package/es/components/dsh-select/src/select.mjs +1 -1
  105. package/es/components/dsh-select/src/select.vue.d.ts +1 -1
  106. package/es/components/dsh-select/src/useSelect.d.ts +1 -1
  107. package/es/components/dsh-select/src/useSelect.mjs +9 -5
  108. package/es/components/dsh-select/src/useSelect.mjs.map +1 -1
  109. package/es/components/empty/index.mjs +2 -2
  110. package/es/components/empty/src/empty.mjs +11 -55
  111. package/es/components/empty/src/empty.mjs.map +1 -1
  112. package/es/components/empty/src/empty2.mjs +55 -11
  113. package/es/components/empty/src/empty2.mjs.map +1 -1
  114. package/es/components/form/index.mjs +2 -2
  115. package/es/components/form/src/form.mjs +54 -148
  116. package/es/components/form/src/form.mjs.map +1 -1
  117. package/es/components/form/src/form2.mjs +148 -54
  118. package/es/components/form/src/form2.mjs.map +1 -1
  119. package/es/components/image/index.mjs +2 -2
  120. package/es/components/image/src/image.mjs +225 -61
  121. package/es/components/image/src/image.mjs.map +1 -1
  122. package/es/components/image/src/image2.mjs +61 -225
  123. package/es/components/image/src/image2.mjs.map +1 -1
  124. package/es/components/index.mjs +42 -42
  125. package/es/components/input/index.mjs +2 -2
  126. package/es/components/input/src/input.mjs +453 -109
  127. package/es/components/input/src/input.mjs.map +1 -1
  128. package/es/components/input/src/input2.mjs +109 -453
  129. package/es/components/input/src/input2.mjs.map +1 -1
  130. package/es/components/input-number/index.mjs +2 -2
  131. package/es/components/input-number/src/input-number.mjs +58 -314
  132. package/es/components/input-number/src/input-number.mjs.map +1 -1
  133. package/es/components/input-number/src/input-number2.mjs +314 -58
  134. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  135. package/es/components/link/index.mjs +2 -2
  136. package/es/components/link/src/link.mjs +50 -21
  137. package/es/components/link/src/link.mjs.map +1 -1
  138. package/es/components/link/src/link2.mjs +21 -50
  139. package/es/components/link/src/link2.mjs.map +1 -1
  140. package/es/components/notification/index.mjs +1 -1
  141. package/es/components/notification/src/notification.mjs +67 -149
  142. package/es/components/notification/src/notification.mjs.map +1 -1
  143. package/es/components/notification/src/notification2.mjs +149 -67
  144. package/es/components/notification/src/notification2.mjs.map +1 -1
  145. package/es/components/notification/src/notify.mjs +2 -2
  146. package/es/components/page-header/index.mjs +2 -2
  147. package/es/components/page-header/src/page-header.mjs +103 -17
  148. package/es/components/page-header/src/page-header.mjs.map +1 -1
  149. package/es/components/page-header/src/page-header2.mjs +17 -103
  150. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  151. package/es/components/pagination/src/components/sizes.mjs +23 -69
  152. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  153. package/es/components/pagination/src/components/sizes2.mjs +69 -23
  154. package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
  155. package/es/components/pagination/src/pagination.mjs +1 -1
  156. package/es/components/popconfirm/index.mjs +2 -2
  157. package/es/components/popconfirm/src/popconfirm.mjs +110 -47
  158. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  159. package/es/components/popconfirm/src/popconfirm2.mjs +47 -110
  160. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  161. package/es/components/popover/index.mjs +2 -2
  162. package/es/components/popover/src/popover.mjs +111 -66
  163. package/es/components/popover/src/popover.mjs.map +1 -1
  164. package/es/components/popover/src/popover2.mjs +66 -111
  165. package/es/components/popover/src/popover2.mjs.map +1 -1
  166. package/es/components/popper/index.mjs +2 -2
  167. package/es/components/popper/src/arrow.mjs +8 -37
  168. package/es/components/popper/src/arrow.mjs.map +1 -1
  169. package/es/components/popper/src/arrow2.mjs +37 -8
  170. package/es/components/popper/src/arrow2.mjs.map +1 -1
  171. package/es/components/radio/index.mjs +4 -4
  172. package/es/components/radio/src/radio-button.mjs +1 -1
  173. package/es/components/radio/src/radio-group.mjs +68 -36
  174. package/es/components/radio/src/radio-group.mjs.map +1 -1
  175. package/es/components/radio/src/radio-group2.mjs +36 -68
  176. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  177. package/es/components/radio/src/radio.mjs +73 -30
  178. package/es/components/radio/src/radio.mjs.map +1 -1
  179. package/es/components/radio/src/radio2.mjs +30 -73
  180. package/es/components/radio/src/radio2.mjs.map +1 -1
  181. package/es/components/scrollbar/index.mjs +1 -1
  182. package/es/components/scrollbar/src/bar.mjs +17 -42
  183. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  184. package/es/components/scrollbar/src/bar2.mjs +42 -17
  185. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  186. package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
  187. package/es/components/scrollbar/src/thumb.mjs +11 -130
  188. package/es/components/scrollbar/src/thumb.mjs.map +1 -1
  189. package/es/components/scrollbar/src/thumb2.mjs +130 -11
  190. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  191. package/es/components/select/src/select.mjs +1 -1
  192. package/es/components/skeleton/index.mjs +2 -2
  193. package/es/components/skeleton/src/skeleton-item.mjs +18 -23
  194. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  195. package/es/components/skeleton/src/skeleton-item2.mjs +23 -18
  196. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  197. package/es/components/skeleton/src/skeleton.mjs +1 -1
  198. package/es/components/slider/index.mjs +2 -2
  199. package/es/components/slider/src/slider.mjs +91 -233
  200. package/es/components/slider/src/slider.mjs.map +1 -1
  201. package/es/components/slider/src/slider2.mjs +233 -91
  202. package/es/components/slider/src/slider2.mjs.map +1 -1
  203. package/es/components/statistic/index.mjs +2 -2
  204. package/es/components/statistic/src/statistic.mjs +25 -70
  205. package/es/components/statistic/src/statistic.mjs.map +1 -1
  206. package/es/components/statistic/src/statistic2.mjs +70 -25
  207. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  208. package/es/components/steps/index.mjs +4 -4
  209. package/es/components/steps/src/item.mjs +191 -19
  210. package/es/components/steps/src/item.mjs.map +1 -1
  211. package/es/components/steps/src/item2.mjs +19 -191
  212. package/es/components/steps/src/item2.mjs.map +1 -1
  213. package/es/components/steps/src/steps.mjs +39 -36
  214. package/es/components/steps/src/steps.mjs.map +1 -1
  215. package/es/components/steps/src/steps2.mjs +36 -39
  216. package/es/components/steps/src/steps2.mjs.map +1 -1
  217. package/es/components/switch/index.mjs +2 -2
  218. package/es/components/switch/src/switch.mjs +264 -98
  219. package/es/components/switch/src/switch.mjs.map +1 -1
  220. package/es/components/switch/src/switch2.mjs +98 -264
  221. package/es/components/switch/src/switch2.mjs.map +1 -1
  222. package/es/components/tag/index.mjs +2 -2
  223. package/es/components/tag/src/tag.mjs +94 -33
  224. package/es/components/tag/src/tag.mjs.map +1 -1
  225. package/es/components/tag/src/tag2.mjs +33 -94
  226. package/es/components/tag/src/tag2.mjs.map +1 -1
  227. package/es/components/text/index.mjs +2 -2
  228. package/es/components/text/src/text.mjs +24 -38
  229. package/es/components/text/src/text.mjs.map +1 -1
  230. package/es/components/text/src/text2.mjs +38 -24
  231. package/es/components/text/src/text2.mjs.map +1 -1
  232. package/es/components/time-select/index.mjs +1 -1
  233. package/es/components/time-select/src/time-select.mjs +48 -120
  234. package/es/components/time-select/src/time-select.mjs.map +1 -1
  235. package/es/components/time-select/src/time-select2.mjs +120 -48
  236. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  237. package/es/components/timeline/index.mjs +2 -2
  238. package/es/components/timeline/src/timeline-item.mjs +72 -42
  239. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  240. package/es/components/timeline/src/timeline-item2.mjs +42 -72
  241. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  242. package/es/components/tooltip/src/tooltip.mjs +1 -1
  243. package/es/components/tooltip/src/tooltip2.mjs +1 -1
  244. package/es/components/tooltip-v2/index.mjs +4 -4
  245. package/es/components/tooltip-v2/src/arrow.mjs +22 -37
  246. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  247. package/es/components/tooltip-v2/src/arrow2.mjs +37 -22
  248. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  249. package/es/components/tooltip-v2/src/content.mjs +50 -112
  250. package/es/components/tooltip-v2/src/content.mjs.map +1 -1
  251. package/es/components/tooltip-v2/src/content2.mjs +112 -50
  252. package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
  253. package/es/components/tooltip-v2/src/tooltip.mjs +73 -20
  254. package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
  255. package/es/components/tooltip-v2/src/tooltip2.mjs +20 -73
  256. package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
  257. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  258. package/es/components/transfer/src/transfer-panel.mjs +128 -19
  259. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  260. package/es/components/transfer/src/transfer-panel2.mjs +19 -128
  261. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  262. package/es/components/transfer/src/transfer.mjs +1 -1
  263. package/es/components/upload/index.mjs +4 -4
  264. package/es/components/upload/src/upload-content.mjs +194 -33
  265. package/es/components/upload/src/upload-content.mjs.map +1 -1
  266. package/es/components/upload/src/upload-content2.mjs +33 -194
  267. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  268. package/es/components/upload/src/upload-dragger.mjs +11 -72
  269. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  270. package/es/components/upload/src/upload-dragger2.mjs +72 -11
  271. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  272. package/es/components/upload/src/upload-list2.mjs +1 -1
  273. package/es/components/upload/src/upload.mjs +116 -101
  274. package/es/components/upload/src/upload.mjs.map +1 -1
  275. package/es/components/upload/src/upload2.mjs +101 -116
  276. package/es/components/upload/src/upload2.mjs.map +1 -1
  277. package/es/components/upload/src/use-handlers.mjs +1 -1
  278. package/es/index.mjs +42 -42
  279. package/lib/components/affix/index.js +2 -2
  280. package/lib/components/affix/src/affix.js +117 -27
  281. package/lib/components/affix/src/affix.js.map +1 -1
  282. package/lib/components/affix/src/affix2.js +27 -117
  283. package/lib/components/affix/src/affix2.js.map +1 -1
  284. package/lib/components/autocomplete/index.js +2 -2
  285. package/lib/components/autocomplete/src/autocomplete.js +360 -81
  286. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  287. package/lib/components/autocomplete/src/autocomplete2.js +81 -360
  288. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  289. package/lib/components/avatar/index.js +2 -2
  290. package/lib/components/avatar/src/avatar.js +67 -33
  291. package/lib/components/avatar/src/avatar.js.map +1 -1
  292. package/lib/components/avatar/src/avatar2.js +33 -67
  293. package/lib/components/avatar/src/avatar2.js.map +1 -1
  294. package/lib/components/backtop/index.js +2 -2
  295. package/lib/components/backtop/src/backtop.js +54 -22
  296. package/lib/components/backtop/src/backtop.js.map +1 -1
  297. package/lib/components/backtop/src/backtop2.js +22 -54
  298. package/lib/components/backtop/src/backtop2.js.map +1 -1
  299. package/lib/components/badge/index.js +2 -2
  300. package/lib/components/badge/src/badge.js +55 -17
  301. package/lib/components/badge/src/badge.js.map +1 -1
  302. package/lib/components/badge/src/badge2.js +17 -55
  303. package/lib/components/badge/src/badge2.js.map +1 -1
  304. package/lib/components/breadcrumb/index.js +2 -2
  305. package/lib/components/breadcrumb/src/breadcrumb.js +11 -36
  306. package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
  307. package/lib/components/breadcrumb/src/breadcrumb2.js +36 -11
  308. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  309. package/lib/components/button/index.js +1 -1
  310. package/lib/components/button/src/button-group.js +6 -30
  311. package/lib/components/button/src/button-group.js.map +1 -1
  312. package/lib/components/button/src/button-group2.js +30 -6
  313. package/lib/components/button/src/button-group2.js.map +1 -1
  314. package/lib/components/calendar/src/calendar2.js +1 -1
  315. package/lib/components/calendar/src/date-table.js +37 -87
  316. package/lib/components/calendar/src/date-table.js.map +1 -1
  317. package/lib/components/calendar/src/date-table2.js +87 -37
  318. package/lib/components/calendar/src/date-table2.js.map +1 -1
  319. package/lib/components/calendar/src/use-date-table.js +1 -1
  320. package/lib/components/carousel/index.js +4 -4
  321. package/lib/components/carousel/src/carousel-item.js +8 -69
  322. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  323. package/lib/components/carousel/src/carousel-item2.js +69 -8
  324. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  325. package/lib/components/carousel/src/carousel.js +57 -169
  326. package/lib/components/carousel/src/carousel.js.map +1 -1
  327. package/lib/components/carousel/src/carousel2.js +169 -57
  328. package/lib/components/carousel/src/carousel2.js.map +1 -1
  329. package/lib/components/cascader/index.js +2 -2
  330. package/lib/components/cascader/src/cascader.js +626 -66
  331. package/lib/components/cascader/src/cascader.js.map +1 -1
  332. package/lib/components/cascader/src/cascader2.js +66 -626
  333. package/lib/components/cascader/src/cascader2.js.map +1 -1
  334. package/lib/components/checkbox/index.js +2 -2
  335. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  336. package/lib/components/checkbox/src/checkbox.js +117 -51
  337. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  338. package/lib/components/checkbox/src/checkbox2.js +51 -117
  339. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  340. package/lib/components/collapse/index.js +2 -2
  341. package/lib/components/collapse/src/collapse-item.js +14 -91
  342. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  343. package/lib/components/collapse/src/collapse-item2.js +91 -14
  344. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  345. package/lib/components/countdown/index.js +2 -2
  346. package/lib/components/countdown/src/countdown.js +24 -74
  347. package/lib/components/countdown/src/countdown.js.map +1 -1
  348. package/lib/components/countdown/src/countdown2.js +74 -24
  349. package/lib/components/countdown/src/countdown2.js.map +1 -1
  350. package/lib/components/dialog/src/dialog-content.js +29 -88
  351. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  352. package/lib/components/dialog/src/dialog-content2.js +88 -29
  353. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  354. package/lib/components/dialog/src/dialog.js +1 -1
  355. package/lib/components/dialog/src/dialog2.js +1 -1
  356. package/lib/components/divider/index.js +2 -2
  357. package/lib/components/divider/src/divider.js +35 -17
  358. package/lib/components/divider/src/divider.js.map +1 -1
  359. package/lib/components/divider/src/divider2.js +17 -35
  360. package/lib/components/divider/src/divider2.js.map +1 -1
  361. package/lib/components/drawer/index.js +2 -2
  362. package/lib/components/drawer/src/drawer.js +176 -27
  363. package/lib/components/drawer/src/drawer.js.map +1 -1
  364. package/lib/components/drawer/src/drawer2.js +27 -176
  365. package/lib/components/drawer/src/drawer2.js.map +1 -1
  366. package/lib/components/dropdown/index.js +2 -2
  367. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  368. package/lib/components/dropdown/src/dropdown-item.js +1 -1
  369. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  370. package/lib/components/dropdown/src/dropdown.js +106 -306
  371. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  372. package/lib/components/dropdown/src/dropdown2.js +306 -106
  373. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  374. package/lib/components/dsh-cascader/src/dsh-cascader2.js +1 -1
  375. package/lib/components/dsh-select/index.d.ts +1 -1
  376. package/lib/components/dsh-select/src/select.js +1 -1
  377. package/lib/components/dsh-select/src/select.vue.d.ts +1 -1
  378. package/lib/components/dsh-select/src/useSelect.d.ts +1 -1
  379. package/lib/components/dsh-select/src/useSelect.js +8 -4
  380. package/lib/components/dsh-select/src/useSelect.js.map +1 -1
  381. package/lib/components/empty/index.js +2 -2
  382. package/lib/components/empty/src/empty.js +11 -55
  383. package/lib/components/empty/src/empty.js.map +1 -1
  384. package/lib/components/empty/src/empty2.js +55 -11
  385. package/lib/components/empty/src/empty2.js.map +1 -1
  386. package/lib/components/form/index.js +2 -2
  387. package/lib/components/form/src/form.js +54 -147
  388. package/lib/components/form/src/form.js.map +1 -1
  389. package/lib/components/form/src/form2.js +147 -54
  390. package/lib/components/form/src/form2.js.map +1 -1
  391. package/lib/components/image/index.js +2 -2
  392. package/lib/components/image/src/image.js +224 -61
  393. package/lib/components/image/src/image.js.map +1 -1
  394. package/lib/components/image/src/image2.js +61 -224
  395. package/lib/components/image/src/image2.js.map +1 -1
  396. package/lib/components/index.js +42 -42
  397. package/lib/components/input/index.js +2 -2
  398. package/lib/components/input/src/input.js +452 -109
  399. package/lib/components/input/src/input.js.map +1 -1
  400. package/lib/components/input/src/input2.js +109 -452
  401. package/lib/components/input/src/input2.js.map +1 -1
  402. package/lib/components/input-number/index.js +2 -2
  403. package/lib/components/input-number/src/input-number.js +57 -312
  404. package/lib/components/input-number/src/input-number.js.map +1 -1
  405. package/lib/components/input-number/src/input-number2.js +312 -57
  406. package/lib/components/input-number/src/input-number2.js.map +1 -1
  407. package/lib/components/link/index.js +2 -2
  408. package/lib/components/link/src/link.js +50 -22
  409. package/lib/components/link/src/link.js.map +1 -1
  410. package/lib/components/link/src/link2.js +22 -50
  411. package/lib/components/link/src/link2.js.map +1 -1
  412. package/lib/components/notification/index.js +1 -1
  413. package/lib/components/notification/src/notification.js +68 -148
  414. package/lib/components/notification/src/notification.js.map +1 -1
  415. package/lib/components/notification/src/notification2.js +148 -68
  416. package/lib/components/notification/src/notification2.js.map +1 -1
  417. package/lib/components/notification/src/notify.js +2 -2
  418. package/lib/components/page-header/index.js +2 -2
  419. package/lib/components/page-header/src/page-header.js +103 -18
  420. package/lib/components/page-header/src/page-header.js.map +1 -1
  421. package/lib/components/page-header/src/page-header2.js +18 -103
  422. package/lib/components/page-header/src/page-header2.js.map +1 -1
  423. package/lib/components/pagination/src/components/sizes.js +23 -69
  424. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  425. package/lib/components/pagination/src/components/sizes2.js +69 -23
  426. package/lib/components/pagination/src/components/sizes2.js.map +1 -1
  427. package/lib/components/pagination/src/pagination.js +1 -1
  428. package/lib/components/popconfirm/index.js +2 -2
  429. package/lib/components/popconfirm/src/popconfirm.js +110 -48
  430. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  431. package/lib/components/popconfirm/src/popconfirm2.js +48 -110
  432. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  433. package/lib/components/popover/index.js +2 -2
  434. package/lib/components/popover/src/popover.js +111 -67
  435. package/lib/components/popover/src/popover.js.map +1 -1
  436. package/lib/components/popover/src/popover2.js +67 -111
  437. package/lib/components/popover/src/popover2.js.map +1 -1
  438. package/lib/components/popper/index.js +2 -2
  439. package/lib/components/popper/src/arrow.js +9 -37
  440. package/lib/components/popper/src/arrow.js.map +1 -1
  441. package/lib/components/popper/src/arrow2.js +37 -9
  442. package/lib/components/popper/src/arrow2.js.map +1 -1
  443. package/lib/components/radio/index.js +4 -4
  444. package/lib/components/radio/src/radio-button.js +1 -1
  445. package/lib/components/radio/src/radio-group.js +68 -37
  446. package/lib/components/radio/src/radio-group.js.map +1 -1
  447. package/lib/components/radio/src/radio-group2.js +37 -68
  448. package/lib/components/radio/src/radio-group2.js.map +1 -1
  449. package/lib/components/radio/src/radio.js +73 -32
  450. package/lib/components/radio/src/radio.js.map +1 -1
  451. package/lib/components/radio/src/radio2.js +32 -73
  452. package/lib/components/radio/src/radio2.js.map +1 -1
  453. package/lib/components/scrollbar/index.js +1 -1
  454. package/lib/components/scrollbar/src/bar.js +17 -42
  455. package/lib/components/scrollbar/src/bar.js.map +1 -1
  456. package/lib/components/scrollbar/src/bar2.js +42 -17
  457. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  458. package/lib/components/scrollbar/src/scrollbar2.js +1 -1
  459. package/lib/components/scrollbar/src/thumb.js +11 -130
  460. package/lib/components/scrollbar/src/thumb.js.map +1 -1
  461. package/lib/components/scrollbar/src/thumb2.js +130 -11
  462. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  463. package/lib/components/select/src/select.js +1 -1
  464. package/lib/components/skeleton/index.js +2 -2
  465. package/lib/components/skeleton/src/skeleton-item.js +18 -23
  466. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  467. package/lib/components/skeleton/src/skeleton-item2.js +23 -18
  468. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  469. package/lib/components/skeleton/src/skeleton.js +1 -1
  470. package/lib/components/slider/index.js +2 -2
  471. package/lib/components/slider/src/slider.js +92 -233
  472. package/lib/components/slider/src/slider.js.map +1 -1
  473. package/lib/components/slider/src/slider2.js +233 -92
  474. package/lib/components/slider/src/slider2.js.map +1 -1
  475. package/lib/components/statistic/index.js +2 -2
  476. package/lib/components/statistic/src/statistic.js +25 -70
  477. package/lib/components/statistic/src/statistic.js.map +1 -1
  478. package/lib/components/statistic/src/statistic2.js +70 -25
  479. package/lib/components/statistic/src/statistic2.js.map +1 -1
  480. package/lib/components/steps/index.js +4 -4
  481. package/lib/components/steps/src/item.js +191 -19
  482. package/lib/components/steps/src/item.js.map +1 -1
  483. package/lib/components/steps/src/item2.js +19 -191
  484. package/lib/components/steps/src/item2.js.map +1 -1
  485. package/lib/components/steps/src/steps.js +39 -37
  486. package/lib/components/steps/src/steps.js.map +1 -1
  487. package/lib/components/steps/src/steps2.js +37 -39
  488. package/lib/components/steps/src/steps2.js.map +1 -1
  489. package/lib/components/switch/index.js +2 -2
  490. package/lib/components/switch/src/switch.js +263 -98
  491. package/lib/components/switch/src/switch.js.map +1 -1
  492. package/lib/components/switch/src/switch2.js +98 -263
  493. package/lib/components/switch/src/switch2.js.map +1 -1
  494. package/lib/components/tag/index.js +2 -2
  495. package/lib/components/tag/src/tag.js +94 -34
  496. package/lib/components/tag/src/tag.js.map +1 -1
  497. package/lib/components/tag/src/tag2.js +34 -94
  498. package/lib/components/tag/src/tag2.js.map +1 -1
  499. package/lib/components/text/index.js +2 -2
  500. package/lib/components/text/src/text.js +24 -38
  501. package/lib/components/text/src/text.js.map +1 -1
  502. package/lib/components/text/src/text2.js +38 -24
  503. package/lib/components/text/src/text2.js.map +1 -1
  504. package/lib/components/time-select/index.js +1 -1
  505. package/lib/components/time-select/src/time-select.js +48 -125
  506. package/lib/components/time-select/src/time-select.js.map +1 -1
  507. package/lib/components/time-select/src/time-select2.js +125 -48
  508. package/lib/components/time-select/src/time-select2.js.map +1 -1
  509. package/lib/components/timeline/index.js +2 -2
  510. package/lib/components/timeline/src/timeline-item.js +72 -42
  511. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  512. package/lib/components/timeline/src/timeline-item2.js +42 -72
  513. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  514. package/lib/components/tooltip/src/tooltip.js +1 -1
  515. package/lib/components/tooltip/src/tooltip2.js +1 -1
  516. package/lib/components/tooltip-v2/index.js +4 -4
  517. package/lib/components/tooltip-v2/src/arrow.js +23 -37
  518. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  519. package/lib/components/tooltip-v2/src/arrow2.js +37 -23
  520. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  521. package/lib/components/tooltip-v2/src/content.js +50 -112
  522. package/lib/components/tooltip-v2/src/content.js.map +1 -1
  523. package/lib/components/tooltip-v2/src/content2.js +112 -50
  524. package/lib/components/tooltip-v2/src/content2.js.map +1 -1
  525. package/lib/components/tooltip-v2/src/tooltip.js +73 -20
  526. package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
  527. package/lib/components/tooltip-v2/src/tooltip2.js +20 -73
  528. package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
  529. package/lib/components/transfer/src/composables/use-check.js +1 -1
  530. package/lib/components/transfer/src/transfer-panel.js +128 -21
  531. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  532. package/lib/components/transfer/src/transfer-panel2.js +21 -128
  533. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  534. package/lib/components/transfer/src/transfer.js +1 -1
  535. package/lib/components/upload/index.js +4 -4
  536. package/lib/components/upload/src/upload-content.js +193 -32
  537. package/lib/components/upload/src/upload-content.js.map +1 -1
  538. package/lib/components/upload/src/upload-content2.js +32 -193
  539. package/lib/components/upload/src/upload-content2.js.map +1 -1
  540. package/lib/components/upload/src/upload-dragger.js +12 -72
  541. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  542. package/lib/components/upload/src/upload-dragger2.js +72 -12
  543. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  544. package/lib/components/upload/src/upload-list2.js +1 -1
  545. package/lib/components/upload/src/upload.js +116 -104
  546. package/lib/components/upload/src/upload.js.map +1 -1
  547. package/lib/components/upload/src/upload2.js +104 -116
  548. package/lib/components/upload/src/upload2.js.map +1 -1
  549. package/lib/components/upload/src/use-handlers.js +1 -1
  550. package/lib/index.js +42 -42
  551. package/package.json +1 -1
@@ -1,155 +1,61 @@
1
- import { defineComponent, computed, watch, provide, reactive, toRefs, openBlock, createElementBlock, normalizeClass, unref, renderSlot } from 'vue';
1
+ import '../../../constants/index.mjs';
2
2
  import '../../../utils/index.mjs';
3
- import '../../../hooks/index.mjs';
4
- import './hooks/index.mjs';
5
- import { formContextKey } from './constants.mjs';
6
- import { formProps, formEmits } from './form2.mjs';
7
- import { filterFields, useFormLabelWidth } from './utils.mjs';
8
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
- import { useFormSize } from './hooks/use-form-common-props.mjs';
10
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
11
- import { debugWarn } from '../../../utils/error.mjs';
12
- import { isFunction } from '@vue/shared';
3
+ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
4
+ import { componentSizes } from '../../../constants/size.mjs';
5
+ import { isArray, isString } from '@vue/shared';
6
+ import { isBoolean } from '../../../utils/types.mjs';
13
7
 
14
- const COMPONENT_NAME = "ElForm";
15
- const __default__ = defineComponent({
16
- name: COMPONENT_NAME
8
+ const formMetaProps = buildProps({
9
+ size: {
10
+ type: String,
11
+ values: componentSizes
12
+ },
13
+ disabled: Boolean
17
14
  });
18
- const _sfc_main = /* @__PURE__ */ defineComponent({
19
- ...__default__,
20
- props: formProps,
21
- emits: formEmits,
22
- setup(__props, { expose, emit }) {
23
- const props = __props;
24
- const fields = [];
25
- const formSize = useFormSize();
26
- const ns = useNamespace("form");
27
- const formClasses = computed(() => {
28
- const { labelPosition, inline } = props;
29
- return [
30
- ns.b(),
31
- ns.m(formSize.value || "default"),
32
- {
33
- [ns.m(`label-${labelPosition}`)]: labelPosition,
34
- [ns.m("inline")]: inline
35
- }
36
- ];
37
- });
38
- const addField = (field) => {
39
- fields.push(field);
40
- };
41
- const removeField = (field) => {
42
- if (field.prop) {
43
- fields.splice(fields.indexOf(field), 1);
44
- }
45
- };
46
- const resetFields = (properties = []) => {
47
- if (!props.model) {
48
- debugWarn(COMPONENT_NAME, "model is required for resetFields to work.");
49
- return;
50
- }
51
- filterFields(fields, properties).forEach((field) => field.resetField());
52
- };
53
- const clearValidate = (props2 = []) => {
54
- filterFields(fields, props2).forEach((field) => field.clearValidate());
55
- };
56
- const isValidatable = computed(() => {
57
- const hasModel = !!props.model;
58
- if (!hasModel) {
59
- debugWarn(COMPONENT_NAME, "model is required for validate to work.");
60
- }
61
- return hasModel;
62
- });
63
- const obtainValidateFields = (props2) => {
64
- if (fields.length === 0)
65
- return [];
66
- const filteredFields = filterFields(fields, props2);
67
- if (!filteredFields.length) {
68
- debugWarn(COMPONENT_NAME, "please pass correct props!");
69
- return [];
70
- }
71
- return filteredFields;
72
- };
73
- const validate = async (callback) => validateField(void 0, callback);
74
- const doValidateField = async (props2 = []) => {
75
- if (!isValidatable.value)
76
- return false;
77
- const fields2 = obtainValidateFields(props2);
78
- if (fields2.length === 0)
79
- return true;
80
- let validationErrors = {};
81
- for (const field of fields2) {
82
- try {
83
- await field.validate("");
84
- } catch (fields3) {
85
- validationErrors = {
86
- ...validationErrors,
87
- ...fields3
88
- };
89
- }
90
- }
91
- if (Object.keys(validationErrors).length === 0)
92
- return true;
93
- return Promise.reject(validationErrors);
94
- };
95
- const validateField = async (modelProps = [], callback) => {
96
- const shouldThrow = !isFunction(callback);
97
- try {
98
- const result = await doValidateField(modelProps);
99
- if (result === true) {
100
- callback == null ? void 0 : callback(result);
101
- }
102
- return result;
103
- } catch (e) {
104
- if (e instanceof Error)
105
- throw e;
106
- const invalidFields = e;
107
- if (props.scrollToError) {
108
- scrollToField(Object.keys(invalidFields)[0]);
109
- }
110
- callback == null ? void 0 : callback(false, invalidFields);
111
- return shouldThrow && Promise.reject(invalidFields);
112
- }
113
- };
114
- const scrollToField = (prop) => {
115
- var _a;
116
- const field = filterFields(fields, prop)[0];
117
- if (field) {
118
- (_a = field.$el) == null ? void 0 : _a.scrollIntoView(props.scrollIntoViewOptions);
119
- }
120
- };
121
- watch(() => props.rules, () => {
122
- if (props.validateOnRuleChange) {
123
- validate().catch((err) => debugWarn(err));
124
- }
125
- }, { deep: true });
126
- provide(formContextKey, reactive({
127
- ...toRefs(props),
128
- emit,
129
- resetFields,
130
- clearValidate,
131
- validateField,
132
- addField,
133
- removeField,
134
- ...useFormLabelWidth()
135
- }));
136
- expose({
137
- validate,
138
- validateField,
139
- resetFields,
140
- clearValidate,
141
- scrollToField
142
- });
143
- return (_ctx, _cache) => {
144
- return openBlock(), createElementBlock("form", {
145
- class: normalizeClass(unref(formClasses))
146
- }, [
147
- renderSlot(_ctx.$slots, "default")
148
- ], 2);
149
- };
15
+ const formProps = buildProps({
16
+ ...formMetaProps,
17
+ model: Object,
18
+ rules: {
19
+ type: definePropType(Object)
20
+ },
21
+ labelPosition: {
22
+ type: String,
23
+ values: ["left", "right", "top"],
24
+ default: "right"
25
+ },
26
+ requireAsteriskPosition: {
27
+ type: String,
28
+ values: ["left", "right"],
29
+ default: "left"
30
+ },
31
+ labelWidth: {
32
+ type: [String, Number],
33
+ default: ""
34
+ },
35
+ labelSuffix: {
36
+ type: String,
37
+ default: ""
38
+ },
39
+ inline: Boolean,
40
+ inlineMessage: Boolean,
41
+ statusIcon: Boolean,
42
+ showMessage: {
43
+ type: Boolean,
44
+ default: true
45
+ },
46
+ validateOnRuleChange: {
47
+ type: Boolean,
48
+ default: true
49
+ },
50
+ hideRequiredAsterisk: Boolean,
51
+ scrollToError: Boolean,
52
+ scrollIntoViewOptions: {
53
+ type: [Object, Boolean]
150
54
  }
151
55
  });
152
- var Form = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:\\project\\work\\code-monkey-ui\\packages\\components\\form\\src\\form.vue"]]);
56
+ const formEmits = {
57
+ validate: (prop, isValid, message) => (isArray(prop) || isString(prop)) && isBoolean(isValid) && isString(message)
58
+ };
153
59
 
154
- export { Form as default };
60
+ export { formEmits, formProps };
155
61
  //# sourceMappingURL=form.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"form.mjs","sources":["../../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<template>\n <form :class=\"formClasses\">\n <slot />\n </form>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, reactive, toRefs, watch } from 'vue'\nimport { debugWarn, isFunction } from '@code-monkey-ui/utils'\nimport { useNamespace } from '@code-monkey-ui/hooks'\nimport { useFormSize } from './hooks'\nimport { formContextKey } from './constants'\nimport { formEmits, formProps } from './form'\nimport { filterFields, useFormLabelWidth } from './utils'\n\nimport type { ValidateFieldsError } from 'async-validator'\nimport type { Arrayable } from '@code-monkey-ui/utils'\nimport type {\n FormContext,\n FormItemContext,\n FormValidateCallback,\n FormValidationResult,\n} from './types'\nimport type { FormItemProp } from './form-item'\n\nconst COMPONENT_NAME = 'ElForm'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = defineProps(formProps)\nconst emit = defineEmits(formEmits)\n\nconst fields: FormItemContext[] = []\n\nconst formSize = useFormSize()\nconst ns = useNamespace('form')\nconst formClasses = computed(() => {\n const { labelPosition, inline } = props\n return [\n ns.b(),\n // todo: in v2.2.0, we can remove default\n // in fact, remove it doesn't affect the final style\n ns.m(formSize.value || 'default'),\n {\n [ns.m(`label-${labelPosition}`)]: labelPosition,\n [ns.m('inline')]: inline,\n },\n ]\n})\n\nconst addField: FormContext['addField'] = (field) => {\n fields.push(field)\n}\n\nconst removeField: FormContext['removeField'] = (field) => {\n if (field.prop) {\n fields.splice(fields.indexOf(field), 1)\n }\n}\n\nconst resetFields: FormContext['resetFields'] = (properties = []) => {\n if (!props.model) {\n debugWarn(COMPONENT_NAME, 'model is required for resetFields to work.')\n return\n }\n filterFields(fields, properties).forEach((field) => field.resetField())\n}\n\nconst clearValidate: FormContext['clearValidate'] = (props = []) => {\n filterFields(fields, props).forEach((field) => field.clearValidate())\n}\n\nconst isValidatable = computed(() => {\n const hasModel = !!props.model\n if (!hasModel) {\n debugWarn(COMPONENT_NAME, 'model is required for validate to work.')\n }\n return hasModel\n})\n\nconst obtainValidateFields = (props: Arrayable<FormItemProp>) => {\n if (fields.length === 0) return []\n\n const filteredFields = filterFields(fields, props)\n if (!filteredFields.length) {\n debugWarn(COMPONENT_NAME, 'please pass correct props!')\n return []\n }\n return filteredFields\n}\n\nconst validate = async (\n callback?: FormValidateCallback\n): FormValidationResult => validateField(undefined, callback)\n\nconst doValidateField = async (\n props: Arrayable<FormItemProp> = []\n): Promise<boolean> => {\n if (!isValidatable.value) return false\n\n const fields = obtainValidateFields(props)\n if (fields.length === 0) return true\n\n let validationErrors: ValidateFieldsError = {}\n for (const field of fields) {\n try {\n await field.validate('')\n } catch (fields) {\n validationErrors = {\n ...validationErrors,\n ...(fields as ValidateFieldsError),\n }\n }\n }\n\n if (Object.keys(validationErrors).length === 0) return true\n return Promise.reject(validationErrors)\n}\n\nconst validateField: FormContext['validateField'] = async (\n modelProps = [],\n callback\n) => {\n const shouldThrow = !isFunction(callback)\n try {\n const result = await doValidateField(modelProps)\n // When result is false meaning that the fields are not validatable\n if (result === true) {\n callback?.(result)\n }\n return result\n } catch (e) {\n if (e instanceof Error) throw e\n\n const invalidFields = e as ValidateFieldsError\n\n if (props.scrollToError) {\n scrollToField(Object.keys(invalidFields)[0])\n }\n callback?.(false, invalidFields)\n return shouldThrow && Promise.reject(invalidFields)\n }\n}\n\nconst scrollToField = (prop: FormItemProp) => {\n const field = filterFields(fields, prop)[0]\n if (field) {\n field.$el?.scrollIntoView(props.scrollIntoViewOptions)\n }\n}\n\nwatch(\n () => props.rules,\n () => {\n if (props.validateOnRuleChange) {\n validate().catch((err) => debugWarn(err))\n }\n },\n { deep: true }\n)\n\nprovide(\n formContextKey,\n reactive({\n ...toRefs(props),\n emit,\n\n resetFields,\n clearValidate,\n validateField,\n addField,\n removeField,\n\n ...useFormLabelWidth(),\n })\n)\n\ndefineExpose({\n /**\n * @description Validate the whole form. Receives a callback or returns `Promise`.\n */\n validate,\n /**\n * @description Validate specified fields.\n */\n validateField,\n /**\n * @description Reset specified fields and remove validation result.\n */\n resetFields,\n /**\n * @description Clear validation message for specified fields.\n */\n clearValidate,\n /**\n * @description Scroll to the specified fields.\n */\n scrollToField,\n})\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form.mjs","sources":["../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import { componentSizes } from '@code-monkey-ui/constants'\nimport {\n buildProps,\n definePropType,\n isArray,\n isBoolean,\n isString,\n} from '@code-monkey-ui/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormItemProp } from './form-item'\nimport type { FormRules } from './types'\n\nconst formMetaProps = buildProps({\n /**\n * @description Control the size of components in this form.\n */\n size: {\n type: String,\n values: componentSizes,\n },\n /**\n * @description Whether to disable all components in this form. If set to `true`, it will override the `disabled` prop of the inner component.\n */\n disabled: Boolean,\n} as const)\n\nexport const formProps = buildProps({\n ...formMetaProps,\n /**\n * @description Data of form component.\n */\n model: Object,\n /**\n * @description Validation rules of form.\n */\n rules: {\n type: definePropType<FormRules>(Object),\n },\n /**\n * @description Position of label. If set to `'left'` or `'right'`, `label-width` prop is also required.\n */\n labelPosition: {\n type: String,\n values: ['left', 'right', 'top'],\n default: 'right',\n },\n /**\n * @description Position of asterisk.\n */\n requireAsteriskPosition: {\n type: String,\n values: ['left', 'right'],\n default: 'left',\n },\n /**\n * @description Width of label, e.g. `'50px'`. All its direct child form items will inherit this value. `auto` is supported.\n */\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n /**\n * @description Suffix of the label.\n */\n labelSuffix: {\n type: String,\n default: '',\n },\n /**\n * @description Whether the form is inline.\n */\n inline: Boolean,\n /**\n * @description Whether to display the error message inline with the form item.\n */\n inlineMessage: Boolean,\n /**\n * @description Whether to display an icon indicating the validation result.\n */\n statusIcon: Boolean,\n /**\n * @description Whether to show the error message.\n */\n showMessage: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to trigger validation when the `rules` prop is changed.\n */\n validateOnRuleChange: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to hide required fields should have a red asterisk (star) beside their labels.\n */\n hideRequiredAsterisk: Boolean,\n /**\n * @description When validation fails, scroll to the first error form entry.\n */\n scrollToError: Boolean,\n /**\n * @description When validation fails, it scrolls to the first error item based on the scrollIntoView option.\n */\n scrollIntoViewOptions: {\n type: [Object, Boolean],\n },\n} as const)\nexport type FormProps = ExtractPropTypes<typeof formProps>\nexport type FormMetaProps = ExtractPropTypes<typeof formMetaProps>\n\nexport const formEmits = {\n validate: (prop: FormItemProp, isValid: boolean, message: string) =>\n (isArray(prop) || isString(prop)) &&\n isBoolean(isValid) &&\n isString(message),\n}\nexport type FormEmits = typeof formEmits\n"],"names":[],"mappings":";;;;;;;AAQA,MAAM,aAAa,GAAG,UAAU,CAAC;AACjC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,cAAc;AAC1B,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,CAAC,CAAC,CAAC;AACS,MAAC,SAAS,GAAG,UAAU,CAAC;AACpC,EAAE,GAAG,aAAa;AAClB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;AACpC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,uBAAuB,EAAE;AAC3B,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC7B,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE,OAAO;AAC/B,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,qBAAqB,EAAE;AACzB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC3B,GAAG;AACH,CAAC,EAAE;AACS,MAAC,SAAS,GAAG;AACzB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC;AACpH;;;;"}
@@ -1,61 +1,155 @@
1
- import '../../../constants/index.mjs';
1
+ import { defineComponent, computed, watch, provide, reactive, toRefs, openBlock, createElementBlock, normalizeClass, unref, renderSlot } from 'vue';
2
2
  import '../../../utils/index.mjs';
3
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
4
- import { componentSizes } from '../../../constants/size.mjs';
5
- import { isArray, isString } from '@vue/shared';
6
- import { isBoolean } from '../../../utils/types.mjs';
3
+ import '../../../hooks/index.mjs';
4
+ import './hooks/index.mjs';
5
+ import { formContextKey } from './constants.mjs';
6
+ import { formProps, formEmits } from './form.mjs';
7
+ import { filterFields, useFormLabelWidth } from './utils.mjs';
8
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
+ import { useFormSize } from './hooks/use-form-common-props.mjs';
10
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
11
+ import { debugWarn } from '../../../utils/error.mjs';
12
+ import { isFunction } from '@vue/shared';
7
13
 
8
- const formMetaProps = buildProps({
9
- size: {
10
- type: String,
11
- values: componentSizes
12
- },
13
- disabled: Boolean
14
+ const COMPONENT_NAME = "ElForm";
15
+ const __default__ = defineComponent({
16
+ name: COMPONENT_NAME
14
17
  });
15
- const formProps = buildProps({
16
- ...formMetaProps,
17
- model: Object,
18
- rules: {
19
- type: definePropType(Object)
20
- },
21
- labelPosition: {
22
- type: String,
23
- values: ["left", "right", "top"],
24
- default: "right"
25
- },
26
- requireAsteriskPosition: {
27
- type: String,
28
- values: ["left", "right"],
29
- default: "left"
30
- },
31
- labelWidth: {
32
- type: [String, Number],
33
- default: ""
34
- },
35
- labelSuffix: {
36
- type: String,
37
- default: ""
38
- },
39
- inline: Boolean,
40
- inlineMessage: Boolean,
41
- statusIcon: Boolean,
42
- showMessage: {
43
- type: Boolean,
44
- default: true
45
- },
46
- validateOnRuleChange: {
47
- type: Boolean,
48
- default: true
49
- },
50
- hideRequiredAsterisk: Boolean,
51
- scrollToError: Boolean,
52
- scrollIntoViewOptions: {
53
- type: [Object, Boolean]
18
+ const _sfc_main = /* @__PURE__ */ defineComponent({
19
+ ...__default__,
20
+ props: formProps,
21
+ emits: formEmits,
22
+ setup(__props, { expose, emit }) {
23
+ const props = __props;
24
+ const fields = [];
25
+ const formSize = useFormSize();
26
+ const ns = useNamespace("form");
27
+ const formClasses = computed(() => {
28
+ const { labelPosition, inline } = props;
29
+ return [
30
+ ns.b(),
31
+ ns.m(formSize.value || "default"),
32
+ {
33
+ [ns.m(`label-${labelPosition}`)]: labelPosition,
34
+ [ns.m("inline")]: inline
35
+ }
36
+ ];
37
+ });
38
+ const addField = (field) => {
39
+ fields.push(field);
40
+ };
41
+ const removeField = (field) => {
42
+ if (field.prop) {
43
+ fields.splice(fields.indexOf(field), 1);
44
+ }
45
+ };
46
+ const resetFields = (properties = []) => {
47
+ if (!props.model) {
48
+ debugWarn(COMPONENT_NAME, "model is required for resetFields to work.");
49
+ return;
50
+ }
51
+ filterFields(fields, properties).forEach((field) => field.resetField());
52
+ };
53
+ const clearValidate = (props2 = []) => {
54
+ filterFields(fields, props2).forEach((field) => field.clearValidate());
55
+ };
56
+ const isValidatable = computed(() => {
57
+ const hasModel = !!props.model;
58
+ if (!hasModel) {
59
+ debugWarn(COMPONENT_NAME, "model is required for validate to work.");
60
+ }
61
+ return hasModel;
62
+ });
63
+ const obtainValidateFields = (props2) => {
64
+ if (fields.length === 0)
65
+ return [];
66
+ const filteredFields = filterFields(fields, props2);
67
+ if (!filteredFields.length) {
68
+ debugWarn(COMPONENT_NAME, "please pass correct props!");
69
+ return [];
70
+ }
71
+ return filteredFields;
72
+ };
73
+ const validate = async (callback) => validateField(void 0, callback);
74
+ const doValidateField = async (props2 = []) => {
75
+ if (!isValidatable.value)
76
+ return false;
77
+ const fields2 = obtainValidateFields(props2);
78
+ if (fields2.length === 0)
79
+ return true;
80
+ let validationErrors = {};
81
+ for (const field of fields2) {
82
+ try {
83
+ await field.validate("");
84
+ } catch (fields3) {
85
+ validationErrors = {
86
+ ...validationErrors,
87
+ ...fields3
88
+ };
89
+ }
90
+ }
91
+ if (Object.keys(validationErrors).length === 0)
92
+ return true;
93
+ return Promise.reject(validationErrors);
94
+ };
95
+ const validateField = async (modelProps = [], callback) => {
96
+ const shouldThrow = !isFunction(callback);
97
+ try {
98
+ const result = await doValidateField(modelProps);
99
+ if (result === true) {
100
+ callback == null ? void 0 : callback(result);
101
+ }
102
+ return result;
103
+ } catch (e) {
104
+ if (e instanceof Error)
105
+ throw e;
106
+ const invalidFields = e;
107
+ if (props.scrollToError) {
108
+ scrollToField(Object.keys(invalidFields)[0]);
109
+ }
110
+ callback == null ? void 0 : callback(false, invalidFields);
111
+ return shouldThrow && Promise.reject(invalidFields);
112
+ }
113
+ };
114
+ const scrollToField = (prop) => {
115
+ var _a;
116
+ const field = filterFields(fields, prop)[0];
117
+ if (field) {
118
+ (_a = field.$el) == null ? void 0 : _a.scrollIntoView(props.scrollIntoViewOptions);
119
+ }
120
+ };
121
+ watch(() => props.rules, () => {
122
+ if (props.validateOnRuleChange) {
123
+ validate().catch((err) => debugWarn(err));
124
+ }
125
+ }, { deep: true });
126
+ provide(formContextKey, reactive({
127
+ ...toRefs(props),
128
+ emit,
129
+ resetFields,
130
+ clearValidate,
131
+ validateField,
132
+ addField,
133
+ removeField,
134
+ ...useFormLabelWidth()
135
+ }));
136
+ expose({
137
+ validate,
138
+ validateField,
139
+ resetFields,
140
+ clearValidate,
141
+ scrollToField
142
+ });
143
+ return (_ctx, _cache) => {
144
+ return openBlock(), createElementBlock("form", {
145
+ class: normalizeClass(unref(formClasses))
146
+ }, [
147
+ renderSlot(_ctx.$slots, "default")
148
+ ], 2);
149
+ };
54
150
  }
55
151
  });
56
- const formEmits = {
57
- validate: (prop, isValid, message) => (isArray(prop) || isString(prop)) && isBoolean(isValid) && isString(message)
58
- };
152
+ var Form = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:\\project\\work\\code-monkey-ui\\packages\\components\\form\\src\\form.vue"]]);
59
153
 
60
- export { formEmits, formProps };
154
+ export { Form as default };
61
155
  //# sourceMappingURL=form2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"form2.mjs","sources":["../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import { componentSizes } from '@code-monkey-ui/constants'\nimport {\n buildProps,\n definePropType,\n isArray,\n isBoolean,\n isString,\n} from '@code-monkey-ui/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormItemProp } from './form-item'\nimport type { FormRules } from './types'\n\nconst formMetaProps = buildProps({\n /**\n * @description Control the size of components in this form.\n */\n size: {\n type: String,\n values: componentSizes,\n },\n /**\n * @description Whether to disable all components in this form. If set to `true`, it will override the `disabled` prop of the inner component.\n */\n disabled: Boolean,\n} as const)\n\nexport const formProps = buildProps({\n ...formMetaProps,\n /**\n * @description Data of form component.\n */\n model: Object,\n /**\n * @description Validation rules of form.\n */\n rules: {\n type: definePropType<FormRules>(Object),\n },\n /**\n * @description Position of label. If set to `'left'` or `'right'`, `label-width` prop is also required.\n */\n labelPosition: {\n type: String,\n values: ['left', 'right', 'top'],\n default: 'right',\n },\n /**\n * @description Position of asterisk.\n */\n requireAsteriskPosition: {\n type: String,\n values: ['left', 'right'],\n default: 'left',\n },\n /**\n * @description Width of label, e.g. `'50px'`. All its direct child form items will inherit this value. `auto` is supported.\n */\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n /**\n * @description Suffix of the label.\n */\n labelSuffix: {\n type: String,\n default: '',\n },\n /**\n * @description Whether the form is inline.\n */\n inline: Boolean,\n /**\n * @description Whether to display the error message inline with the form item.\n */\n inlineMessage: Boolean,\n /**\n * @description Whether to display an icon indicating the validation result.\n */\n statusIcon: Boolean,\n /**\n * @description Whether to show the error message.\n */\n showMessage: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to trigger validation when the `rules` prop is changed.\n */\n validateOnRuleChange: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to hide required fields should have a red asterisk (star) beside their labels.\n */\n hideRequiredAsterisk: Boolean,\n /**\n * @description When validation fails, scroll to the first error form entry.\n */\n scrollToError: Boolean,\n /**\n * @description When validation fails, it scrolls to the first error item based on the scrollIntoView option.\n */\n scrollIntoViewOptions: {\n type: [Object, Boolean],\n },\n} as const)\nexport type FormProps = ExtractPropTypes<typeof formProps>\nexport type FormMetaProps = ExtractPropTypes<typeof formMetaProps>\n\nexport const formEmits = {\n validate: (prop: FormItemProp, isValid: boolean, message: string) =>\n (isArray(prop) || isString(prop)) &&\n isBoolean(isValid) &&\n isString(message),\n}\nexport type FormEmits = typeof formEmits\n"],"names":[],"mappings":";;;;;;;AAQA,MAAM,aAAa,GAAG,UAAU,CAAC;AACjC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,cAAc;AAC1B,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,CAAC,CAAC,CAAC;AACS,MAAC,SAAS,GAAG,UAAU,CAAC;AACpC,EAAE,GAAG,aAAa;AAClB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;AACpC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,uBAAuB,EAAE;AAC3B,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC7B,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE,OAAO;AAC/B,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,qBAAqB,EAAE;AACzB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC3B,GAAG;AACH,CAAC,EAAE;AACS,MAAC,SAAS,GAAG;AACzB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC;AACpH;;;;"}
1
+ {"version":3,"file":"form2.mjs","sources":["../../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<template>\n <form :class=\"formClasses\">\n <slot />\n </form>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, reactive, toRefs, watch } from 'vue'\nimport { debugWarn, isFunction } from '@code-monkey-ui/utils'\nimport { useNamespace } from '@code-monkey-ui/hooks'\nimport { useFormSize } from './hooks'\nimport { formContextKey } from './constants'\nimport { formEmits, formProps } from './form'\nimport { filterFields, useFormLabelWidth } from './utils'\n\nimport type { ValidateFieldsError } from 'async-validator'\nimport type { Arrayable } from '@code-monkey-ui/utils'\nimport type {\n FormContext,\n FormItemContext,\n FormValidateCallback,\n FormValidationResult,\n} from './types'\nimport type { FormItemProp } from './form-item'\n\nconst COMPONENT_NAME = 'ElForm'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = defineProps(formProps)\nconst emit = defineEmits(formEmits)\n\nconst fields: FormItemContext[] = []\n\nconst formSize = useFormSize()\nconst ns = useNamespace('form')\nconst formClasses = computed(() => {\n const { labelPosition, inline } = props\n return [\n ns.b(),\n // todo: in v2.2.0, we can remove default\n // in fact, remove it doesn't affect the final style\n ns.m(formSize.value || 'default'),\n {\n [ns.m(`label-${labelPosition}`)]: labelPosition,\n [ns.m('inline')]: inline,\n },\n ]\n})\n\nconst addField: FormContext['addField'] = (field) => {\n fields.push(field)\n}\n\nconst removeField: FormContext['removeField'] = (field) => {\n if (field.prop) {\n fields.splice(fields.indexOf(field), 1)\n }\n}\n\nconst resetFields: FormContext['resetFields'] = (properties = []) => {\n if (!props.model) {\n debugWarn(COMPONENT_NAME, 'model is required for resetFields to work.')\n return\n }\n filterFields(fields, properties).forEach((field) => field.resetField())\n}\n\nconst clearValidate: FormContext['clearValidate'] = (props = []) => {\n filterFields(fields, props).forEach((field) => field.clearValidate())\n}\n\nconst isValidatable = computed(() => {\n const hasModel = !!props.model\n if (!hasModel) {\n debugWarn(COMPONENT_NAME, 'model is required for validate to work.')\n }\n return hasModel\n})\n\nconst obtainValidateFields = (props: Arrayable<FormItemProp>) => {\n if (fields.length === 0) return []\n\n const filteredFields = filterFields(fields, props)\n if (!filteredFields.length) {\n debugWarn(COMPONENT_NAME, 'please pass correct props!')\n return []\n }\n return filteredFields\n}\n\nconst validate = async (\n callback?: FormValidateCallback\n): FormValidationResult => validateField(undefined, callback)\n\nconst doValidateField = async (\n props: Arrayable<FormItemProp> = []\n): Promise<boolean> => {\n if (!isValidatable.value) return false\n\n const fields = obtainValidateFields(props)\n if (fields.length === 0) return true\n\n let validationErrors: ValidateFieldsError = {}\n for (const field of fields) {\n try {\n await field.validate('')\n } catch (fields) {\n validationErrors = {\n ...validationErrors,\n ...(fields as ValidateFieldsError),\n }\n }\n }\n\n if (Object.keys(validationErrors).length === 0) return true\n return Promise.reject(validationErrors)\n}\n\nconst validateField: FormContext['validateField'] = async (\n modelProps = [],\n callback\n) => {\n const shouldThrow = !isFunction(callback)\n try {\n const result = await doValidateField(modelProps)\n // When result is false meaning that the fields are not validatable\n if (result === true) {\n callback?.(result)\n }\n return result\n } catch (e) {\n if (e instanceof Error) throw e\n\n const invalidFields = e as ValidateFieldsError\n\n if (props.scrollToError) {\n scrollToField(Object.keys(invalidFields)[0])\n }\n callback?.(false, invalidFields)\n return shouldThrow && Promise.reject(invalidFields)\n }\n}\n\nconst scrollToField = (prop: FormItemProp) => {\n const field = filterFields(fields, prop)[0]\n if (field) {\n field.$el?.scrollIntoView(props.scrollIntoViewOptions)\n }\n}\n\nwatch(\n () => props.rules,\n () => {\n if (props.validateOnRuleChange) {\n validate().catch((err) => debugWarn(err))\n }\n },\n { deep: true }\n)\n\nprovide(\n formContextKey,\n reactive({\n ...toRefs(props),\n emit,\n\n resetFields,\n clearValidate,\n validateField,\n addField,\n removeField,\n\n ...useFormLabelWidth(),\n })\n)\n\ndefineExpose({\n /**\n * @description Validate the whole form. Receives a callback or returns `Promise`.\n */\n validate,\n /**\n * @description Validate specified fields.\n */\n validateField,\n /**\n * @description Reset specified fields and remove validation result.\n */\n resetFields,\n /**\n * @description Clear validation message for specified fields.\n */\n clearValidate,\n /**\n * @description Scroll to the specified fields.\n */\n scrollToField,\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import '../../utils/index.mjs';
2
- import Image from './src/image2.mjs';
3
- export { imageEmits, imageProps } from './src/image.mjs';
2
+ import Image from './src/image.mjs';
3
+ export { imageEmits, imageProps } from './src/image2.mjs';
4
4
  import { withInstall } from '../../utils/vue/install.mjs';
5
5
 
6
6
  const ElImage = withInstall(Image);