beyond-webui 1.1.43 → 1.1.44

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 (529) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +2 -7
  3. package/dist/index.full.min.js +1 -1
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +1 -1
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +2 -7
  8. package/es/components/alert/index.mjs +2 -2
  9. package/es/components/alert/src/alert.mjs +36 -96
  10. package/es/components/alert/src/alert.mjs.map +1 -1
  11. package/es/components/alert/src/alert2.mjs +96 -36
  12. package/es/components/alert/src/alert2.mjs.map +1 -1
  13. package/es/components/autocomplete/index.mjs +2 -2
  14. package/es/components/autocomplete/src/autocomplete.mjs +96 -397
  15. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  16. package/es/components/autocomplete/src/autocomplete2.mjs +397 -96
  17. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  18. package/es/components/avatar/index.mjs +2 -2
  19. package/es/components/avatar/src/avatar.mjs +67 -32
  20. package/es/components/avatar/src/avatar.mjs.map +1 -1
  21. package/es/components/avatar/src/avatar2.mjs +32 -67
  22. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  23. package/es/components/backtop/index.mjs +2 -2
  24. package/es/components/backtop/src/backtop.mjs +54 -21
  25. package/es/components/backtop/src/backtop.mjs.map +1 -1
  26. package/es/components/backtop/src/backtop2.mjs +21 -54
  27. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  28. package/es/components/breadcrumb/index.mjs +2 -2
  29. package/es/components/breadcrumb/src/breadcrumb-item.mjs +56 -11
  30. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  31. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +11 -56
  32. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  33. package/es/components/button/index.mjs +1 -1
  34. package/es/components/button/src/button-group.mjs +30 -6
  35. package/es/components/button/src/button-group.mjs.map +1 -1
  36. package/es/components/button/src/button-group2.mjs +6 -30
  37. package/es/components/button/src/button-group2.mjs.map +1 -1
  38. package/es/components/card/index.mjs +2 -2
  39. package/es/components/card/src/card.mjs +35 -16
  40. package/es/components/card/src/card.mjs.map +1 -1
  41. package/es/components/card/src/card2.mjs +16 -35
  42. package/es/components/card/src/card2.mjs.map +1 -1
  43. package/es/components/checkbox/index.mjs +2 -2
  44. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  45. package/es/components/checkbox/src/checkbox.mjs +49 -117
  46. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  47. package/es/components/checkbox/src/checkbox2.mjs +117 -49
  48. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  49. package/es/components/col/index.mjs +2 -2
  50. package/es/components/col/src/col.mjs +43 -66
  51. package/es/components/col/src/col.mjs.map +1 -1
  52. package/es/components/col/src/col2.mjs +66 -43
  53. package/es/components/col/src/col2.mjs.map +1 -1
  54. package/es/components/collapse/index.mjs +4 -4
  55. package/es/components/collapse/src/collapse-item.mjs +96 -14
  56. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  57. package/es/components/collapse/src/collapse-item2.mjs +14 -96
  58. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  59. package/es/components/collapse/src/collapse.mjs +30 -17
  60. package/es/components/collapse/src/collapse.mjs.map +1 -1
  61. package/es/components/collapse/src/collapse2.mjs +17 -30
  62. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  63. package/es/components/collection/index.mjs +1 -1
  64. package/es/components/collection/src/collection.mjs +10 -62
  65. package/es/components/collection/src/collection.mjs.map +1 -1
  66. package/es/components/collection/src/collection2.mjs +62 -10
  67. package/es/components/collection/src/collection2.mjs.map +1 -1
  68. package/es/components/descriptions/index.mjs +2 -2
  69. package/es/components/descriptions/src/description.mjs +111 -25
  70. package/es/components/descriptions/src/description.mjs.map +1 -1
  71. package/es/components/descriptions/src/description2.mjs +25 -111
  72. package/es/components/descriptions/src/description2.mjs.map +1 -1
  73. package/es/components/descriptions/src/descriptions-row.mjs +7 -64
  74. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  75. package/es/components/descriptions/src/descriptions-row2.mjs +64 -7
  76. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  77. package/es/components/dialog/src/dialog-content.mjs +95 -37
  78. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  79. package/es/components/dialog/src/dialog-content2.mjs +37 -95
  80. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  81. package/es/components/dialog/src/dialog.mjs +1 -1
  82. package/es/components/dialog/src/dialog2.mjs +1 -1
  83. package/es/components/divider/index.mjs +2 -2
  84. package/es/components/divider/src/divider.mjs +35 -17
  85. package/es/components/divider/src/divider.mjs.map +1 -1
  86. package/es/components/divider/src/divider2.mjs +17 -35
  87. package/es/components/divider/src/divider2.mjs.map +1 -1
  88. package/es/components/dropdown/index.mjs +2 -2
  89. package/es/components/dropdown/src/dropdown-item-impl.mjs +2 -2
  90. package/es/components/dropdown/src/dropdown-item.mjs +1 -1
  91. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  92. package/es/components/dropdown/src/dropdown.mjs +307 -97
  93. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  94. package/es/components/dropdown/src/dropdown2.mjs +97 -307
  95. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  96. package/es/components/form/index.mjs +4 -4
  97. package/es/components/form/src/form-item.mjs +317 -43
  98. package/es/components/form/src/form-item.mjs.map +1 -1
  99. package/es/components/form/src/form-item2.mjs +43 -317
  100. package/es/components/form/src/form-item2.mjs.map +1 -1
  101. package/es/components/form/src/form.mjs +55 -152
  102. package/es/components/form/src/form.mjs.map +1 -1
  103. package/es/components/form/src/form2.mjs +152 -55
  104. package/es/components/form/src/form2.mjs.map +1 -1
  105. package/es/components/image/index.mjs +2 -2
  106. package/es/components/image/src/image.mjs +62 -220
  107. package/es/components/image/src/image.mjs.map +1 -1
  108. package/es/components/image/src/image2.mjs +220 -62
  109. package/es/components/image/src/image2.mjs.map +1 -1
  110. package/es/components/index.mjs +39 -39
  111. package/es/components/menu/index.mjs +4 -4
  112. package/es/components/menu/src/menu-item-group.mjs +4 -35
  113. package/es/components/menu/src/menu-item-group.mjs.map +1 -1
  114. package/es/components/menu/src/menu-item-group2.mjs +35 -4
  115. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  116. package/es/components/menu/src/menu-item.mjs +97 -14
  117. package/es/components/menu/src/menu-item.mjs.map +1 -1
  118. package/es/components/menu/src/menu-item2.mjs +14 -97
  119. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  120. package/es/components/pagination/src/components/jumper.mjs +9 -60
  121. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  122. package/es/components/pagination/src/components/jumper2.mjs +60 -9
  123. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  124. package/es/components/pagination/src/components/pager.mjs +214 -17
  125. package/es/components/pagination/src/components/pager.mjs.map +1 -1
  126. package/es/components/pagination/src/components/pager2.mjs +17 -214
  127. package/es/components/pagination/src/components/pager2.mjs.map +1 -1
  128. package/es/components/pagination/src/components/prev.mjs +18 -58
  129. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  130. package/es/components/pagination/src/components/prev2.mjs +58 -18
  131. package/es/components/pagination/src/components/prev2.mjs.map +1 -1
  132. package/es/components/pagination/src/pagination.mjs +3 -3
  133. package/es/components/popover/src/popover2.mjs +2 -2
  134. package/es/components/popper/index.mjs +6 -6
  135. package/es/components/popper/src/arrow.mjs +8 -37
  136. package/es/components/popper/src/arrow.mjs.map +1 -1
  137. package/es/components/popper/src/arrow2.mjs +37 -8
  138. package/es/components/popper/src/arrow2.mjs.map +1 -1
  139. package/es/components/popper/src/content.mjs +94 -137
  140. package/es/components/popper/src/content.mjs.map +1 -1
  141. package/es/components/popper/src/content2.mjs +137 -94
  142. package/es/components/popper/src/content2.mjs.map +1 -1
  143. package/es/components/popper/src/popper.mjs +32 -25
  144. package/es/components/popper/src/popper.mjs.map +1 -1
  145. package/es/components/popper/src/popper2.mjs +25 -32
  146. package/es/components/popper/src/popper2.mjs.map +1 -1
  147. package/es/components/radio/index.mjs +4 -4
  148. package/es/components/radio/src/radio-button.mjs +9 -64
  149. package/es/components/radio/src/radio-button.mjs.map +1 -1
  150. package/es/components/radio/src/radio-button2.mjs +64 -9
  151. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  152. package/es/components/radio/src/radio-group.mjs +36 -68
  153. package/es/components/radio/src/radio-group.mjs.map +1 -1
  154. package/es/components/radio/src/radio-group2.mjs +68 -36
  155. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  156. package/es/components/rate/index.mjs +2 -2
  157. package/es/components/rate/src/rate.mjs +87 -255
  158. package/es/components/rate/src/rate.mjs.map +1 -1
  159. package/es/components/rate/src/rate2.mjs +255 -87
  160. package/es/components/rate/src/rate2.mjs.map +1 -1
  161. package/es/components/result/index.mjs +2 -2
  162. package/es/components/result/src/result.mjs +63 -29
  163. package/es/components/result/src/result.mjs.map +1 -1
  164. package/es/components/result/src/result2.mjs +29 -63
  165. package/es/components/result/src/result2.mjs.map +1 -1
  166. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  167. package/es/components/row/index.mjs +2 -2
  168. package/es/components/row/src/row.mjs +45 -30
  169. package/es/components/row/src/row.mjs.map +1 -1
  170. package/es/components/row/src/row2.mjs +30 -45
  171. package/es/components/row/src/row2.mjs.map +1 -1
  172. package/es/components/scrollbar/index.mjs +3 -3
  173. package/es/components/scrollbar/src/bar.mjs +1 -1
  174. package/es/components/scrollbar/src/scrollbar.mjs +46 -174
  175. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  176. package/es/components/scrollbar/src/scrollbar2.mjs +174 -46
  177. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  178. package/es/components/scrollbar/src/thumb.mjs +130 -11
  179. package/es/components/scrollbar/src/thumb.mjs.map +1 -1
  180. package/es/components/scrollbar/src/thumb2.mjs +11 -130
  181. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  182. package/es/components/select/src/select.mjs +2 -7
  183. package/es/components/select/src/select.mjs.map +1 -1
  184. package/es/components/skeleton/index.mjs +2 -2
  185. package/es/components/skeleton/src/skeleton.mjs +49 -22
  186. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  187. package/es/components/skeleton/src/skeleton2.mjs +22 -49
  188. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  189. package/es/components/slider/index.mjs +2 -2
  190. package/es/components/slider/src/button.mjs +21 -93
  191. package/es/components/slider/src/button.mjs.map +1 -1
  192. package/es/components/slider/src/button2.mjs +93 -21
  193. package/es/components/slider/src/button2.mjs.map +1 -1
  194. package/es/components/slider/src/slider.mjs +233 -91
  195. package/es/components/slider/src/slider.mjs.map +1 -1
  196. package/es/components/slider/src/slider2.mjs +91 -233
  197. package/es/components/slider/src/slider2.mjs.map +1 -1
  198. package/es/components/steps/index.mjs +4 -4
  199. package/es/components/steps/src/item.mjs +188 -19
  200. package/es/components/steps/src/item.mjs.map +1 -1
  201. package/es/components/steps/src/item2.mjs +19 -188
  202. package/es/components/steps/src/item2.mjs.map +1 -1
  203. package/es/components/steps/src/steps.mjs +36 -34
  204. package/es/components/steps/src/steps.mjs.map +1 -1
  205. package/es/components/steps/src/steps2.mjs +34 -36
  206. package/es/components/steps/src/steps2.mjs.map +1 -1
  207. package/es/components/switch/index.mjs +2 -2
  208. package/es/components/switch/src/switch.mjs +88 -241
  209. package/es/components/switch/src/switch.mjs.map +1 -1
  210. package/es/components/switch/src/switch2.mjs +241 -88
  211. package/es/components/switch/src/switch2.mjs.map +1 -1
  212. package/es/components/tabs/index.mjs +2 -2
  213. package/es/components/tabs/src/tab-pane.mjs +13 -72
  214. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  215. package/es/components/tabs/src/tab-pane2.mjs +72 -13
  216. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  217. package/es/components/time-select/index.d.ts +2 -2
  218. package/es/components/time-select/index.mjs +1 -1
  219. package/es/components/time-select/src/time-select.mjs +48 -118
  220. package/es/components/time-select/src/time-select.mjs.map +1 -1
  221. package/es/components/time-select/src/time-select.vue.d.ts +1 -1
  222. package/es/components/time-select/src/time-select2.mjs +118 -48
  223. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  224. package/es/components/tooltip/index.mjs +3 -3
  225. package/es/components/tooltip/src/content.mjs +1 -1
  226. package/es/components/tooltip/src/content2.mjs +1 -1
  227. package/es/components/tooltip/src/tooltip.mjs +169 -31
  228. package/es/components/tooltip/src/tooltip.mjs.map +1 -1
  229. package/es/components/tooltip/src/tooltip2.mjs +31 -169
  230. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  231. package/es/components/tooltip/src/trigger.mjs +73 -16
  232. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  233. package/es/components/tooltip/src/trigger2.mjs +16 -73
  234. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  235. package/es/components/tooltip-v2/index.mjs +3 -3
  236. package/es/components/tooltip-v2/src/arrow.mjs +37 -22
  237. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  238. package/es/components/tooltip-v2/src/arrow2.mjs +22 -37
  239. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  240. package/es/components/tooltip-v2/src/content2.mjs +1 -1
  241. package/es/components/tooltip-v2/src/root.mjs +80 -17
  242. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  243. package/es/components/tooltip-v2/src/root2.mjs +17 -80
  244. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  245. package/es/components/tooltip-v2/src/tooltip.mjs +6 -6
  246. package/es/components/tooltip-v2/src/tooltip2.mjs +3 -3
  247. package/es/components/tooltip-v2/src/trigger.mjs +12 -89
  248. package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
  249. package/es/components/tooltip-v2/src/trigger2.mjs +89 -12
  250. package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
  251. package/es/components/tree-v2/src/tree-node-content.mjs.map +1 -1
  252. package/es/components/upload/index.mjs +2 -2
  253. package/es/components/upload/src/upload-content.mjs +1 -1
  254. package/es/components/upload/src/upload-content2.mjs +1 -1
  255. package/es/components/upload/src/upload-list.mjs +1 -1
  256. package/es/components/upload/src/upload.mjs +119 -105
  257. package/es/components/upload/src/upload.mjs.map +1 -1
  258. package/es/components/upload/src/upload2.mjs +105 -119
  259. package/es/components/upload/src/upload2.mjs.map +1 -1
  260. package/es/components/upload/src/use-handlers.mjs +1 -1
  261. package/es/components/visual-hidden/index.mjs +3 -3
  262. package/es/components/visual-hidden/src/visual-hidden.mjs +35 -7
  263. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  264. package/es/components/visual-hidden/src/visual-hidden2.mjs +7 -35
  265. package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
  266. package/es/index.mjs +39 -39
  267. package/lib/components/alert/index.js +2 -2
  268. package/lib/components/alert/src/alert.js +37 -95
  269. package/lib/components/alert/src/alert.js.map +1 -1
  270. package/lib/components/alert/src/alert2.js +95 -37
  271. package/lib/components/alert/src/alert2.js.map +1 -1
  272. package/lib/components/autocomplete/index.js +2 -2
  273. package/lib/components/autocomplete/src/autocomplete.js +96 -396
  274. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  275. package/lib/components/autocomplete/src/autocomplete2.js +396 -96
  276. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  277. package/lib/components/avatar/index.js +2 -2
  278. package/lib/components/avatar/src/avatar.js +67 -33
  279. package/lib/components/avatar/src/avatar.js.map +1 -1
  280. package/lib/components/avatar/src/avatar2.js +33 -67
  281. package/lib/components/avatar/src/avatar2.js.map +1 -1
  282. package/lib/components/backtop/index.js +2 -2
  283. package/lib/components/backtop/src/backtop.js +54 -22
  284. package/lib/components/backtop/src/backtop.js.map +1 -1
  285. package/lib/components/backtop/src/backtop2.js +22 -54
  286. package/lib/components/backtop/src/backtop2.js.map +1 -1
  287. package/lib/components/breadcrumb/index.js +2 -2
  288. package/lib/components/breadcrumb/src/breadcrumb-item.js +56 -11
  289. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  290. package/lib/components/breadcrumb/src/breadcrumb-item2.js +11 -56
  291. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  292. package/lib/components/button/index.js +1 -1
  293. package/lib/components/button/src/button-group.js +30 -6
  294. package/lib/components/button/src/button-group.js.map +1 -1
  295. package/lib/components/button/src/button-group2.js +6 -30
  296. package/lib/components/button/src/button-group2.js.map +1 -1
  297. package/lib/components/card/index.js +2 -2
  298. package/lib/components/card/src/card.js +35 -16
  299. package/lib/components/card/src/card.js.map +1 -1
  300. package/lib/components/card/src/card2.js +16 -35
  301. package/lib/components/card/src/card2.js.map +1 -1
  302. package/lib/components/checkbox/index.js +2 -2
  303. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  304. package/lib/components/checkbox/src/checkbox.js +50 -117
  305. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  306. package/lib/components/checkbox/src/checkbox2.js +117 -50
  307. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  308. package/lib/components/col/index.js +2 -2
  309. package/lib/components/col/src/col.js +43 -66
  310. package/lib/components/col/src/col.js.map +1 -1
  311. package/lib/components/col/src/col2.js +66 -43
  312. package/lib/components/col/src/col2.js.map +1 -1
  313. package/lib/components/collapse/index.js +4 -4
  314. package/lib/components/collapse/src/collapse-item.js +96 -14
  315. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  316. package/lib/components/collapse/src/collapse-item2.js +14 -96
  317. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  318. package/lib/components/collapse/src/collapse.js +30 -19
  319. package/lib/components/collapse/src/collapse.js.map +1 -1
  320. package/lib/components/collapse/src/collapse2.js +19 -30
  321. package/lib/components/collapse/src/collapse2.js.map +1 -1
  322. package/lib/components/collection/index.js +1 -1
  323. package/lib/components/collection/src/collection.js +9 -62
  324. package/lib/components/collection/src/collection.js.map +1 -1
  325. package/lib/components/collection/src/collection2.js +62 -9
  326. package/lib/components/collection/src/collection2.js.map +1 -1
  327. package/lib/components/descriptions/index.js +2 -2
  328. package/lib/components/descriptions/src/description.js +111 -25
  329. package/lib/components/descriptions/src/description.js.map +1 -1
  330. package/lib/components/descriptions/src/description2.js +25 -111
  331. package/lib/components/descriptions/src/description2.js.map +1 -1
  332. package/lib/components/descriptions/src/descriptions-row.js +7 -64
  333. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  334. package/lib/components/descriptions/src/descriptions-row2.js +64 -7
  335. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  336. package/lib/components/dialog/src/dialog-content.js +94 -37
  337. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  338. package/lib/components/dialog/src/dialog-content2.js +37 -94
  339. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  340. package/lib/components/dialog/src/dialog.js +1 -1
  341. package/lib/components/dialog/src/dialog2.js +1 -1
  342. package/lib/components/divider/index.js +2 -2
  343. package/lib/components/divider/src/divider.js +35 -17
  344. package/lib/components/divider/src/divider.js.map +1 -1
  345. package/lib/components/divider/src/divider2.js +17 -35
  346. package/lib/components/divider/src/divider2.js.map +1 -1
  347. package/lib/components/dropdown/index.js +2 -2
  348. package/lib/components/dropdown/src/dropdown-item-impl.js +2 -2
  349. package/lib/components/dropdown/src/dropdown-item.js +1 -1
  350. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  351. package/lib/components/dropdown/src/dropdown.js +307 -106
  352. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  353. package/lib/components/dropdown/src/dropdown2.js +106 -307
  354. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  355. package/lib/components/form/index.js +4 -4
  356. package/lib/components/form/src/form-item.js +321 -44
  357. package/lib/components/form/src/form-item.js.map +1 -1
  358. package/lib/components/form/src/form-item2.js +44 -321
  359. package/lib/components/form/src/form-item2.js.map +1 -1
  360. package/lib/components/form/src/form.js +55 -151
  361. package/lib/components/form/src/form.js.map +1 -1
  362. package/lib/components/form/src/form2.js +151 -55
  363. package/lib/components/form/src/form2.js.map +1 -1
  364. package/lib/components/image/index.js +2 -2
  365. package/lib/components/image/src/image.js +62 -219
  366. package/lib/components/image/src/image.js.map +1 -1
  367. package/lib/components/image/src/image2.js +219 -62
  368. package/lib/components/image/src/image2.js.map +1 -1
  369. package/lib/components/index.js +39 -39
  370. package/lib/components/menu/index.js +4 -4
  371. package/lib/components/menu/src/menu-item-group.js +4 -35
  372. package/lib/components/menu/src/menu-item-group.js.map +1 -1
  373. package/lib/components/menu/src/menu-item-group2.js +35 -4
  374. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  375. package/lib/components/menu/src/menu-item.js +97 -15
  376. package/lib/components/menu/src/menu-item.js.map +1 -1
  377. package/lib/components/menu/src/menu-item2.js +15 -97
  378. package/lib/components/menu/src/menu-item2.js.map +1 -1
  379. package/lib/components/pagination/src/components/jumper.js +9 -60
  380. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  381. package/lib/components/pagination/src/components/jumper2.js +60 -9
  382. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  383. package/lib/components/pagination/src/components/pager.js +214 -17
  384. package/lib/components/pagination/src/components/pager.js.map +1 -1
  385. package/lib/components/pagination/src/components/pager2.js +17 -214
  386. package/lib/components/pagination/src/components/pager2.js.map +1 -1
  387. package/lib/components/pagination/src/components/prev.js +19 -58
  388. package/lib/components/pagination/src/components/prev.js.map +1 -1
  389. package/lib/components/pagination/src/components/prev2.js +58 -19
  390. package/lib/components/pagination/src/components/prev2.js.map +1 -1
  391. package/lib/components/pagination/src/pagination.js +3 -3
  392. package/lib/components/popover/src/popover2.js +2 -2
  393. package/lib/components/popper/index.js +6 -6
  394. package/lib/components/popper/src/arrow.js +9 -37
  395. package/lib/components/popper/src/arrow.js.map +1 -1
  396. package/lib/components/popper/src/arrow2.js +37 -9
  397. package/lib/components/popper/src/arrow2.js.map +1 -1
  398. package/lib/components/popper/src/content.js +99 -137
  399. package/lib/components/popper/src/content.js.map +1 -1
  400. package/lib/components/popper/src/content2.js +137 -99
  401. package/lib/components/popper/src/content2.js.map +1 -1
  402. package/lib/components/popper/src/popper.js +32 -28
  403. package/lib/components/popper/src/popper.js.map +1 -1
  404. package/lib/components/popper/src/popper2.js +28 -32
  405. package/lib/components/popper/src/popper2.js.map +1 -1
  406. package/lib/components/radio/index.js +4 -4
  407. package/lib/components/radio/src/radio-button.js +9 -64
  408. package/lib/components/radio/src/radio-button.js.map +1 -1
  409. package/lib/components/radio/src/radio-button2.js +64 -9
  410. package/lib/components/radio/src/radio-button2.js.map +1 -1
  411. package/lib/components/radio/src/radio-group.js +37 -68
  412. package/lib/components/radio/src/radio-group.js.map +1 -1
  413. package/lib/components/radio/src/radio-group2.js +68 -37
  414. package/lib/components/radio/src/radio-group2.js.map +1 -1
  415. package/lib/components/rate/index.js +2 -2
  416. package/lib/components/rate/src/rate.js +87 -254
  417. package/lib/components/rate/src/rate.js.map +1 -1
  418. package/lib/components/rate/src/rate2.js +254 -87
  419. package/lib/components/rate/src/rate2.js.map +1 -1
  420. package/lib/components/result/index.js +2 -2
  421. package/lib/components/result/src/result.js +63 -31
  422. package/lib/components/result/src/result.js.map +1 -1
  423. package/lib/components/result/src/result2.js +31 -63
  424. package/lib/components/result/src/result2.js.map +1 -1
  425. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  426. package/lib/components/row/index.js +2 -2
  427. package/lib/components/row/src/row.js +45 -32
  428. package/lib/components/row/src/row.js.map +1 -1
  429. package/lib/components/row/src/row2.js +32 -45
  430. package/lib/components/row/src/row2.js.map +1 -1
  431. package/lib/components/scrollbar/index.js +3 -3
  432. package/lib/components/scrollbar/src/bar.js +1 -1
  433. package/lib/components/scrollbar/src/scrollbar.js +47 -174
  434. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  435. package/lib/components/scrollbar/src/scrollbar2.js +174 -47
  436. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  437. package/lib/components/scrollbar/src/thumb.js +130 -11
  438. package/lib/components/scrollbar/src/thumb.js.map +1 -1
  439. package/lib/components/scrollbar/src/thumb2.js +11 -130
  440. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  441. package/lib/components/select/src/select.js +2 -7
  442. package/lib/components/select/src/select.js.map +1 -1
  443. package/lib/components/skeleton/index.js +2 -2
  444. package/lib/components/skeleton/src/skeleton.js +49 -22
  445. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  446. package/lib/components/skeleton/src/skeleton2.js +22 -49
  447. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  448. package/lib/components/slider/index.js +2 -2
  449. package/lib/components/slider/src/button.js +22 -93
  450. package/lib/components/slider/src/button.js.map +1 -1
  451. package/lib/components/slider/src/button2.js +93 -22
  452. package/lib/components/slider/src/button2.js.map +1 -1
  453. package/lib/components/slider/src/slider.js +233 -92
  454. package/lib/components/slider/src/slider.js.map +1 -1
  455. package/lib/components/slider/src/slider2.js +92 -233
  456. package/lib/components/slider/src/slider2.js.map +1 -1
  457. package/lib/components/steps/index.js +4 -4
  458. package/lib/components/steps/src/item.js +188 -19
  459. package/lib/components/steps/src/item.js.map +1 -1
  460. package/lib/components/steps/src/item2.js +19 -188
  461. package/lib/components/steps/src/item2.js.map +1 -1
  462. package/lib/components/steps/src/steps.js +37 -34
  463. package/lib/components/steps/src/steps.js.map +1 -1
  464. package/lib/components/steps/src/steps2.js +34 -37
  465. package/lib/components/steps/src/steps2.js.map +1 -1
  466. package/lib/components/switch/index.js +2 -2
  467. package/lib/components/switch/src/switch.js +88 -240
  468. package/lib/components/switch/src/switch.js.map +1 -1
  469. package/lib/components/switch/src/switch2.js +240 -88
  470. package/lib/components/switch/src/switch2.js.map +1 -1
  471. package/lib/components/tabs/index.js +2 -2
  472. package/lib/components/tabs/src/tab-pane.js +13 -72
  473. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  474. package/lib/components/tabs/src/tab-pane2.js +72 -13
  475. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  476. package/lib/components/time-select/index.d.ts +2 -2
  477. package/lib/components/time-select/index.js +1 -1
  478. package/lib/components/time-select/src/time-select.js +48 -123
  479. package/lib/components/time-select/src/time-select.js.map +1 -1
  480. package/lib/components/time-select/src/time-select.vue.d.ts +1 -1
  481. package/lib/components/time-select/src/time-select2.js +123 -48
  482. package/lib/components/time-select/src/time-select2.js.map +1 -1
  483. package/lib/components/tooltip/index.js +3 -3
  484. package/lib/components/tooltip/src/content.js +1 -1
  485. package/lib/components/tooltip/src/content2.js +1 -1
  486. package/lib/components/tooltip/src/tooltip.js +167 -33
  487. package/lib/components/tooltip/src/tooltip.js.map +1 -1
  488. package/lib/components/tooltip/src/tooltip2.js +33 -167
  489. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  490. package/lib/components/tooltip/src/trigger.js +73 -16
  491. package/lib/components/tooltip/src/trigger.js.map +1 -1
  492. package/lib/components/tooltip/src/trigger2.js +16 -73
  493. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  494. package/lib/components/tooltip-v2/index.js +3 -3
  495. package/lib/components/tooltip-v2/src/arrow.js +37 -23
  496. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  497. package/lib/components/tooltip-v2/src/arrow2.js +23 -37
  498. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  499. package/lib/components/tooltip-v2/src/content2.js +1 -1
  500. package/lib/components/tooltip-v2/src/root.js +80 -17
  501. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  502. package/lib/components/tooltip-v2/src/root2.js +17 -80
  503. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  504. package/lib/components/tooltip-v2/src/tooltip.js +6 -6
  505. package/lib/components/tooltip-v2/src/tooltip2.js +3 -3
  506. package/lib/components/tooltip-v2/src/trigger.js +12 -89
  507. package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
  508. package/lib/components/tooltip-v2/src/trigger2.js +89 -12
  509. package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
  510. package/lib/components/tree-v2/src/tree-node-content.js.map +1 -1
  511. package/lib/components/upload/index.js +2 -2
  512. package/lib/components/upload/src/upload-content.js +1 -1
  513. package/lib/components/upload/src/upload-content2.js +1 -1
  514. package/lib/components/upload/src/upload-list.js +1 -1
  515. package/lib/components/upload/src/upload.js +119 -108
  516. package/lib/components/upload/src/upload.js.map +1 -1
  517. package/lib/components/upload/src/upload2.js +108 -119
  518. package/lib/components/upload/src/upload2.js.map +1 -1
  519. package/lib/components/upload/src/use-handlers.js +1 -1
  520. package/lib/components/visual-hidden/index.js +2 -2
  521. package/lib/components/visual-hidden/src/visual-hidden.js +35 -7
  522. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  523. package/lib/components/visual-hidden/src/visual-hidden2.js +7 -35
  524. package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
  525. package/lib/index.js +39 -39
  526. package/package.json +1 -1
  527. package/theme-chalk/el-select.css +1 -1
  528. package/theme-chalk/index.css +1 -1
  529. package/theme-chalk/src/select.scss +2 -1
@@ -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, ref, toRefs, watch } from 'vue'\nimport { debugWarn, isFunction } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/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 '@element-plus/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[] = []\nconst validationErrorsRef = ref()\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 validationErrorsRef.value = validationErrors\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()\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 validationErrors: validationErrorsRef,\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 '@element-plus/constants'\nimport {\n buildProps,\n definePropType,\n isArray,\n isBoolean,\n isString,\n} from '@element-plus/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: {\n type: Boolean,\n default: false,\n },\n /**\n * @description When validation fails, scroll to the first error form entry.\n */\n scrollToError: Boolean,\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;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,aAAa,EAAE,OAAO;AACxB,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,158 @@
1
- import '../../../constants/index.mjs';
1
+ import { defineComponent, ref, 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: {
51
- type: Boolean,
52
- default: false
53
- },
54
- scrollToError: 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 validationErrorsRef = ref();
26
+ const formSize = useFormSize();
27
+ const ns = useNamespace("form");
28
+ const formClasses = computed(() => {
29
+ const { labelPosition, inline } = props;
30
+ return [
31
+ ns.b(),
32
+ ns.m(formSize.value || "default"),
33
+ {
34
+ [ns.m(`label-${labelPosition}`)]: labelPosition,
35
+ [ns.m("inline")]: inline
36
+ }
37
+ ];
38
+ });
39
+ const addField = (field) => {
40
+ fields.push(field);
41
+ };
42
+ const removeField = (field) => {
43
+ if (field.prop) {
44
+ fields.splice(fields.indexOf(field), 1);
45
+ }
46
+ };
47
+ const resetFields = (properties = []) => {
48
+ if (!props.model) {
49
+ debugWarn(COMPONENT_NAME, "model is required for resetFields to work.");
50
+ return;
51
+ }
52
+ filterFields(fields, properties).forEach((field) => field.resetField());
53
+ };
54
+ const clearValidate = (props2 = []) => {
55
+ filterFields(fields, props2).forEach((field) => field.clearValidate());
56
+ };
57
+ const isValidatable = computed(() => {
58
+ const hasModel = !!props.model;
59
+ if (!hasModel) {
60
+ debugWarn(COMPONENT_NAME, "model is required for validate to work.");
61
+ }
62
+ return hasModel;
63
+ });
64
+ const obtainValidateFields = (props2) => {
65
+ if (fields.length === 0)
66
+ return [];
67
+ const filteredFields = filterFields(fields, props2);
68
+ if (!filteredFields.length) {
69
+ debugWarn(COMPONENT_NAME, "please pass correct props!");
70
+ return [];
71
+ }
72
+ return filteredFields;
73
+ };
74
+ const validate = async (callback) => validateField(void 0, callback);
75
+ const doValidateField = async (props2 = []) => {
76
+ if (!isValidatable.value)
77
+ return false;
78
+ const fields2 = obtainValidateFields(props2);
79
+ if (fields2.length === 0)
80
+ return true;
81
+ let validationErrors = {};
82
+ for (const field of fields2) {
83
+ try {
84
+ await field.validate("");
85
+ } catch (fields3) {
86
+ validationErrors = {
87
+ ...validationErrors,
88
+ ...fields3
89
+ };
90
+ }
91
+ }
92
+ validationErrorsRef.value = validationErrors;
93
+ if (Object.keys(validationErrors).length === 0)
94
+ return true;
95
+ return Promise.reject(validationErrors);
96
+ };
97
+ const validateField = async (modelProps = [], callback) => {
98
+ const shouldThrow = !isFunction(callback);
99
+ try {
100
+ const result = await doValidateField(modelProps);
101
+ if (result === true) {
102
+ callback == null ? void 0 : callback(result);
103
+ }
104
+ return result;
105
+ } catch (e) {
106
+ if (e instanceof Error)
107
+ throw e;
108
+ const invalidFields = e;
109
+ if (props.scrollToError) {
110
+ scrollToField(Object.keys(invalidFields)[0]);
111
+ }
112
+ callback == null ? void 0 : callback(false, invalidFields);
113
+ return shouldThrow && Promise.reject(invalidFields);
114
+ }
115
+ };
116
+ const scrollToField = (prop) => {
117
+ var _a;
118
+ const field = filterFields(fields, prop)[0];
119
+ if (field) {
120
+ (_a = field.$el) == null ? void 0 : _a.scrollIntoView();
121
+ }
122
+ };
123
+ watch(() => props.rules, () => {
124
+ if (props.validateOnRuleChange) {
125
+ validate().catch((err) => debugWarn(err));
126
+ }
127
+ }, { deep: true });
128
+ provide(formContextKey, reactive({
129
+ ...toRefs(props),
130
+ emit,
131
+ resetFields,
132
+ clearValidate,
133
+ validateField,
134
+ addField,
135
+ removeField,
136
+ ...useFormLabelWidth()
137
+ }));
138
+ expose({
139
+ validate,
140
+ validateField,
141
+ resetFields,
142
+ clearValidate,
143
+ scrollToField,
144
+ validationErrors: validationErrorsRef
145
+ });
146
+ return (_ctx, _cache) => {
147
+ return openBlock(), createElementBlock("form", {
148
+ class: normalizeClass(unref(formClasses))
149
+ }, [
150
+ renderSlot(_ctx.$slots, "default")
151
+ ], 2);
152
+ };
153
+ }
55
154
  });
56
- const formEmits = {
57
- validate: (prop, isValid, message) => (isArray(prop) || isString(prop)) && isBoolean(isValid) && isString(message)
58
- };
155
+ var Form = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:\\beyondtrucks\\beyond-ui\\packages\\components\\form\\src\\form.vue"]]);
59
156
 
60
- export { formEmits, formProps };
157
+ export { Form as default };
61
158
  //# sourceMappingURL=form2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"form2.mjs","sources":["../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport {\n buildProps,\n definePropType,\n isArray,\n isBoolean,\n isString,\n} from '@element-plus/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: {\n type: Boolean,\n default: false,\n },\n /**\n * @description When validation fails, scroll to the first error form entry.\n */\n scrollToError: Boolean,\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;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,aAAa,EAAE,OAAO;AACxB,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, ref, toRefs, watch } from 'vue'\nimport { debugWarn, isFunction } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/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 '@element-plus/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[] = []\nconst validationErrorsRef = ref()\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 validationErrorsRef.value = validationErrors\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()\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 validationErrors: validationErrorsRef,\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/image.mjs';
3
- export { imageEmits, imageProps } from './src/image2.mjs';
2
+ import Image from './src/image2.mjs';
3
+ export { imageEmits, imageProps } from './src/image.mjs';
4
4
  import { withInstall } from '../../utils/vue/install.mjs';
5
5
 
6
6
  const ElImage = withInstall(Image);
@@ -1,226 +1,68 @@
1
- import { defineComponent, useAttrs, ref, computed, nextTick, watch, onMounted, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, mergeProps, createCommentVNode, renderSlot, createElementVNode, toDisplayString, Fragment, createBlock, withCtx } from 'vue';
2
- import { isClient, useThrottleFn, useEventListener } from '@vueuse/core';
3
- import '../../../hooks/index.mjs';
4
- import { ElImageViewer } from '../../image-viewer/index.mjs';
5
1
  import '../../../utils/index.mjs';
6
- import { imageProps, imageEmits } from './image2.mjs';
7
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
8
- import { useLocale } from '../../../hooks/use-locale/index.mjs';
9
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
10
- import { useAttrs as useAttrs$1 } from '../../../hooks/use-attrs/index.mjs';
11
- import { isInContainer } from '../../../utils/dom/position.mjs';
12
- import { isElement } from '../../../utils/types.mjs';
13
- import { isString } from '@vue/shared';
14
- import { getScrollContainer } from '../../../utils/dom/scroll.mjs';
2
+ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
3
+ import { mutable } from '../../../utils/typescript.mjs';
4
+ import { isNumber } from '../../../utils/types.mjs';
15
5
 
16
- const _hoisted_1 = ["src", "loading"];
17
- const _hoisted_2 = { key: 0 };
18
- const __default__ = defineComponent({
19
- name: "ElImage",
20
- inheritAttrs: false
21
- });
22
- const _sfc_main = /* @__PURE__ */ defineComponent({
23
- ...__default__,
24
- props: imageProps,
25
- emits: imageEmits,
26
- setup(__props, { emit }) {
27
- const props = __props;
28
- let prevOverflow = "";
29
- const { t } = useLocale();
30
- const ns = useNamespace("image");
31
- const rawAttrs = useAttrs();
32
- const attrs = useAttrs$1();
33
- const imageSrc = ref();
34
- const hasLoadError = ref(false);
35
- const isLoading = ref(true);
36
- const showViewer = ref(false);
37
- const container = ref();
38
- const _scrollContainer = ref();
39
- const supportLoading = isClient && "loading" in HTMLImageElement.prototype;
40
- let stopScrollListener;
41
- let stopWheelListener;
42
- const containerStyle = computed(() => rawAttrs.style);
43
- const imageStyle = computed(() => {
44
- const { fit } = props;
45
- if (isClient && fit) {
46
- return { objectFit: fit };
47
- }
48
- return {};
49
- });
50
- const preview = computed(() => {
51
- const { previewSrcList } = props;
52
- return Array.isArray(previewSrcList) && previewSrcList.length > 0;
53
- });
54
- const imageIndex = computed(() => {
55
- const { previewSrcList, initialIndex } = props;
56
- let previewIndex = initialIndex;
57
- if (initialIndex > previewSrcList.length - 1) {
58
- previewIndex = 0;
59
- }
60
- return previewIndex;
61
- });
62
- const isManual = computed(() => {
63
- if (props.loading === "eager")
64
- return false;
65
- return !supportLoading && props.loading === "lazy" || props.lazy;
66
- });
67
- const loadImage = () => {
68
- if (!isClient)
69
- return;
70
- isLoading.value = true;
71
- hasLoadError.value = false;
72
- imageSrc.value = props.src;
73
- };
74
- function handleLoad(event) {
75
- isLoading.value = false;
76
- hasLoadError.value = false;
77
- emit("load", event);
78
- }
79
- function handleError(event) {
80
- isLoading.value = false;
81
- hasLoadError.value = true;
82
- emit("error", event);
83
- }
84
- function handleLazyLoad() {
85
- if (isInContainer(container.value, _scrollContainer.value)) {
86
- loadImage();
87
- removeLazyLoadListener();
88
- }
89
- }
90
- const lazyLoadHandler = useThrottleFn(handleLazyLoad, 200);
91
- async function addLazyLoadListener() {
92
- var _a;
93
- if (!isClient)
94
- return;
95
- await nextTick();
96
- const { scrollContainer } = props;
97
- if (isElement(scrollContainer)) {
98
- _scrollContainer.value = scrollContainer;
99
- } else if (isString(scrollContainer) && scrollContainer !== "") {
100
- _scrollContainer.value = (_a = document.querySelector(scrollContainer)) != null ? _a : void 0;
101
- } else if (container.value) {
102
- _scrollContainer.value = getScrollContainer(container.value);
103
- }
104
- if (_scrollContainer.value) {
105
- stopScrollListener = useEventListener(_scrollContainer, "scroll", lazyLoadHandler);
106
- setTimeout(() => handleLazyLoad(), 100);
107
- }
108
- }
109
- function removeLazyLoadListener() {
110
- if (!isClient || !_scrollContainer.value || !lazyLoadHandler)
111
- return;
112
- stopScrollListener == null ? void 0 : stopScrollListener();
113
- _scrollContainer.value = void 0;
114
- }
115
- function wheelHandler(e) {
116
- if (!e.ctrlKey)
117
- return;
118
- if (e.deltaY < 0) {
119
- e.preventDefault();
120
- return false;
121
- } else if (e.deltaY > 0) {
122
- e.preventDefault();
123
- return false;
124
- }
125
- }
126
- function clickHandler() {
127
- if (!preview.value)
128
- return;
129
- stopWheelListener = useEventListener("wheel", wheelHandler, {
130
- passive: false
131
- });
132
- prevOverflow = document.body.style.overflow;
133
- document.body.style.overflow = "hidden";
134
- showViewer.value = true;
135
- emit("show");
136
- }
137
- function closeViewer() {
138
- stopWheelListener == null ? void 0 : stopWheelListener();
139
- document.body.style.overflow = prevOverflow;
140
- showViewer.value = false;
141
- emit("close");
142
- }
143
- function switchViewer(val) {
144
- emit("switch", val);
145
- }
146
- watch(() => props.src, () => {
147
- if (isManual.value) {
148
- isLoading.value = true;
149
- hasLoadError.value = false;
150
- removeLazyLoadListener();
151
- addLazyLoadListener();
152
- } else {
153
- loadImage();
154
- }
155
- });
156
- onMounted(() => {
157
- if (isManual.value) {
158
- addLazyLoadListener();
159
- } else {
160
- loadImage();
161
- }
162
- });
163
- return (_ctx, _cache) => {
164
- return openBlock(), createElementBlock("div", {
165
- ref_key: "container",
166
- ref: container,
167
- class: normalizeClass([unref(ns).b(), _ctx.$attrs.class]),
168
- style: normalizeStyle(unref(containerStyle))
169
- }, [
170
- imageSrc.value !== void 0 && !hasLoadError.value ? (openBlock(), createElementBlock("img", mergeProps({ key: 0 }, unref(attrs), {
171
- src: imageSrc.value,
172
- loading: _ctx.loading,
173
- style: unref(imageStyle),
174
- class: [
175
- unref(ns).e("inner"),
176
- unref(preview) && unref(ns).e("preview"),
177
- isLoading.value && unref(ns).is("loading")
178
- ],
179
- onClick: clickHandler,
180
- onLoad: handleLoad,
181
- onError: handleError
182
- }), null, 16, _hoisted_1)) : createCommentVNode("v-if", true),
183
- isLoading.value || hasLoadError.value ? (openBlock(), createElementBlock("div", {
184
- key: 1,
185
- class: normalizeClass(unref(ns).e("wrapper"))
186
- }, [
187
- isLoading.value ? renderSlot(_ctx.$slots, "placeholder", { key: 0 }, () => [
188
- createElementVNode("div", {
189
- class: normalizeClass(unref(ns).e("placeholder"))
190
- }, null, 2)
191
- ]) : hasLoadError.value ? renderSlot(_ctx.$slots, "error", { key: 1 }, () => [
192
- createElementVNode("div", {
193
- class: normalizeClass(unref(ns).e("error"))
194
- }, toDisplayString(unref(t)("el.image.error")), 3)
195
- ]) : createCommentVNode("v-if", true)
196
- ], 2)) : createCommentVNode("v-if", true),
197
- unref(preview) ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [
198
- showViewer.value ? (openBlock(), createBlock(unref(ElImageViewer), {
199
- key: 0,
200
- "z-index": _ctx.zIndex,
201
- "initial-index": unref(imageIndex),
202
- infinite: _ctx.infinite,
203
- "zoom-rate": _ctx.zoomRate,
204
- "url-list": _ctx.previewSrcList,
205
- "hide-on-click-modal": _ctx.hideOnClickModal,
206
- teleported: _ctx.previewTeleported,
207
- "close-on-press-escape": _ctx.closeOnPressEscape,
208
- onClose: closeViewer,
209
- onSwitch: switchViewer
210
- }, {
211
- default: withCtx(() => [
212
- _ctx.$slots.viewer ? (openBlock(), createElementBlock("div", _hoisted_2, [
213
- renderSlot(_ctx.$slots, "viewer")
214
- ])) : createCommentVNode("v-if", true)
215
- ]),
216
- _: 3
217
- }, 8, ["z-index", "initial-index", "infinite", "zoom-rate", "url-list", "hide-on-click-modal", "teleported", "close-on-press-escape"])) : createCommentVNode("v-if", true)
218
- ], 64)) : createCommentVNode("v-if", true)
219
- ], 6);
220
- };
6
+ const imageProps = buildProps({
7
+ hideOnClickModal: {
8
+ type: Boolean,
9
+ default: false
10
+ },
11
+ src: {
12
+ type: String,
13
+ default: ""
14
+ },
15
+ fit: {
16
+ type: String,
17
+ values: ["", "contain", "cover", "fill", "none", "scale-down"],
18
+ default: ""
19
+ },
20
+ loading: {
21
+ type: String,
22
+ values: ["eager", "lazy"]
23
+ },
24
+ lazy: {
25
+ type: Boolean,
26
+ default: false
27
+ },
28
+ scrollContainer: {
29
+ type: definePropType([String, Object])
30
+ },
31
+ previewSrcList: {
32
+ type: definePropType(Array),
33
+ default: () => mutable([])
34
+ },
35
+ previewTeleported: {
36
+ type: Boolean,
37
+ default: false
38
+ },
39
+ zIndex: {
40
+ type: Number
41
+ },
42
+ initialIndex: {
43
+ type: Number,
44
+ default: 0
45
+ },
46
+ infinite: {
47
+ type: Boolean,
48
+ default: true
49
+ },
50
+ closeOnPressEscape: {
51
+ type: Boolean,
52
+ default: true
53
+ },
54
+ zoomRate: {
55
+ type: Number,
56
+ default: 1.2
221
57
  }
222
58
  });
223
- var Image = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:\\beyondtrucks\\beyond-ui\\packages\\components\\image\\src\\image.vue"]]);
59
+ const imageEmits = {
60
+ load: (evt) => evt instanceof Event,
61
+ error: (evt) => evt instanceof Event,
62
+ switch: (val) => isNumber(val),
63
+ close: () => true,
64
+ show: () => true
65
+ };
224
66
 
225
- export { Image as default };
67
+ export { imageEmits, imageProps };
226
68
  //# sourceMappingURL=image.mjs.map