@pungfe/element 0.0.1-alpha.23 → 0.0.1-alpha.24

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 (282) hide show
  1. package/dist/cjs/Button-8c-6EPNG.cjs +2 -0
  2. package/dist/cjs/Button-8c-6EPNG.cjs.map +1 -0
  3. package/dist/cjs/Button.cjs +1 -1
  4. package/dist/cjs/Checkbox-DV2i3oAo.cjs +2 -0
  5. package/dist/cjs/Checkbox-DV2i3oAo.cjs.map +1 -0
  6. package/dist/cjs/Checkbox.cjs +1 -0
  7. package/dist/cjs/ConfigProvider-CWgQMwu4.cjs +2 -0
  8. package/dist/cjs/ConfigProvider-CWgQMwu4.cjs.map +1 -0
  9. package/dist/cjs/ConfigProvider.cjs +1 -1
  10. package/dist/cjs/DatePicker-D-zFg5ID.cjs +2 -0
  11. package/dist/cjs/DatePicker-D-zFg5ID.cjs.map +1 -0
  12. package/dist/cjs/DatePicker.cjs +1 -1
  13. package/dist/cjs/{Dialog-CSSTtlWY.cjs → Dialog-I1CNkY33.cjs} +2 -2
  14. package/dist/cjs/Dialog-I1CNkY33.cjs.map +1 -0
  15. package/dist/cjs/Dialog.cjs +1 -1
  16. package/dist/cjs/Form-KTV2ied2.cjs +2 -0
  17. package/dist/cjs/Form-KTV2ied2.cjs.map +1 -0
  18. package/dist/cjs/Form.cjs +1 -1
  19. package/dist/cjs/FormItem-CuQV5z6j.cjs +2 -0
  20. package/dist/cjs/FormItem-CuQV5z6j.cjs.map +1 -0
  21. package/dist/cjs/FormItem.cjs +1 -1
  22. package/dist/cjs/Input-B_Ou-LbL.cjs +2 -0
  23. package/dist/cjs/Input-B_Ou-LbL.cjs.map +1 -0
  24. package/dist/cjs/Input.cjs +1 -1
  25. package/dist/cjs/InputNumber-r8Z8g7kZ.cjs +2 -0
  26. package/dist/cjs/InputNumber-r8Z8g7kZ.cjs.map +1 -0
  27. package/dist/cjs/InputNumber.cjs +1 -1
  28. package/dist/cjs/Pagination-DhXD6obk.cjs +2 -0
  29. package/dist/cjs/Pagination-DhXD6obk.cjs.map +1 -0
  30. package/dist/cjs/Pagination.cjs +1 -1
  31. package/dist/cjs/Select-B5KJSbhq.cjs +2 -0
  32. package/dist/cjs/Select-B5KJSbhq.cjs.map +1 -0
  33. package/dist/cjs/Select.cjs +1 -1
  34. package/dist/cjs/TabPane-B9lXMkIe.cjs +2 -0
  35. package/dist/cjs/TabPane-B9lXMkIe.cjs.map +1 -0
  36. package/dist/cjs/TabPane.cjs +1 -1
  37. package/dist/cjs/Table-DkCFI_tS.cjs +2 -0
  38. package/dist/cjs/Table-DkCFI_tS.cjs.map +1 -0
  39. package/dist/cjs/Table.cjs +1 -1
  40. package/dist/cjs/Tabs-DkGg8ajS.cjs +2 -0
  41. package/dist/cjs/Tabs-DkGg8ajS.cjs.map +1 -0
  42. package/dist/cjs/Tabs.cjs +1 -1
  43. package/dist/cjs/Upload-B340o46r.cjs +2 -0
  44. package/dist/cjs/Upload-B340o46r.cjs.map +1 -0
  45. package/dist/cjs/Upload.cjs +1 -1
  46. package/dist/cjs/XButtonAsync-Bhn1wyl2.cjs +2 -0
  47. package/dist/cjs/XButtonAsync-Bhn1wyl2.cjs.map +1 -0
  48. package/dist/cjs/XButtonAsync.cjs +1 -0
  49. package/dist/cjs/XButtonConfirm-W1PyVJkN.cjs +2 -0
  50. package/dist/cjs/XButtonConfirm-W1PyVJkN.cjs.map +1 -0
  51. package/dist/cjs/XButtonConfirm.cjs +1 -0
  52. package/dist/cjs/XFormFlex-8hruOtgA.cjs +2 -0
  53. package/dist/cjs/XFormFlex-8hruOtgA.cjs.map +1 -0
  54. package/dist/cjs/XFormFlex.cjs +1 -0
  55. package/dist/cjs/XFormRequestNext-aYD_iUaf.cjs +2 -0
  56. package/dist/cjs/XFormRequestNext-aYD_iUaf.cjs.map +1 -0
  57. package/dist/cjs/XFormRequestNext.cjs +1 -0
  58. package/dist/cjs/XRequest-Caman5Nd.cjs +2 -0
  59. package/dist/cjs/XRequest-Caman5Nd.cjs.map +1 -0
  60. package/dist/cjs/XRequest.cjs +1 -0
  61. package/dist/cjs/XSelectRequest-YqRvdY99.cjs +2 -0
  62. package/dist/cjs/XSelectRequest-YqRvdY99.cjs.map +1 -0
  63. package/dist/cjs/XSelectRequest.cjs +1 -0
  64. package/dist/cjs/XTableFlex-DPn9j64B.cjs +2 -0
  65. package/dist/cjs/XTableFlex-DPn9j64B.cjs.map +1 -0
  66. package/dist/cjs/XTableFlex.cjs +1 -0
  67. package/dist/cjs/XTableRequestConfigNext.cjs +1 -0
  68. package/dist/cjs/XTableRequestNext.cjs +1 -0
  69. package/dist/cjs/XUploadOssNext-DkXnm4cT.cjs +2 -0
  70. package/dist/cjs/XUploadOssNext-DkXnm4cT.cjs.map +1 -0
  71. package/dist/cjs/XUploadOssNext.cjs +1 -0
  72. package/dist/cjs/advance-CHMQJWzy.cjs +2 -0
  73. package/dist/cjs/advance-CHMQJWzy.cjs.map +1 -0
  74. package/dist/cjs/advance.cjs +1 -0
  75. package/dist/cjs/basic-z-xTRca0.cjs +2 -0
  76. package/dist/cjs/basic-z-xTRca0.cjs.map +1 -0
  77. package/dist/cjs/constants-CYUPXiMy.cjs +2 -0
  78. package/dist/cjs/constants-CYUPXiMy.cjs.map +1 -0
  79. package/dist/cjs/dist-Dgq63FPm.cjs +2 -0
  80. package/dist/cjs/dist-Dgq63FPm.cjs.map +1 -0
  81. package/dist/cjs/{en-B0d-nlXX.cjs → en-BcaAGsZl.cjs} +1 -1
  82. package/dist/cjs/{en-B0d-nlXX.cjs.map → en-BcaAGsZl.cjs.map} +1 -1
  83. package/dist/cjs/en.cjs +1 -1
  84. package/dist/cjs/index.cjs +1 -1
  85. package/dist/cjs/index.cjs.map +1 -1
  86. package/dist/cjs/index2.cjs +1 -1
  87. package/dist/cjs/resolver.cjs +1 -1
  88. package/dist/cjs/resolver.cjs.map +1 -1
  89. package/dist/cjs/{zh-cn-DsaoBOfv.cjs → zh-cn-CwhI82kQ.cjs} +1 -1
  90. package/dist/cjs/{zh-cn-DsaoBOfv.cjs.map → zh-cn-CwhI82kQ.cjs.map} +1 -1
  91. package/dist/cjs/zh-cn.cjs +1 -1
  92. package/dist/es/Button-DSKisAgZ.js +40 -0
  93. package/dist/es/Button-DSKisAgZ.js.map +1 -0
  94. package/dist/es/Button.js +1 -1
  95. package/dist/es/Checkbox-BIKt-mj0.js +46 -0
  96. package/dist/es/Checkbox-BIKt-mj0.js.map +1 -0
  97. package/dist/es/Checkbox.js +2 -0
  98. package/dist/es/{ConfigProvider-BlRc251T.js → ConfigProvider-CEpMMWnQ.js} +4 -4
  99. package/dist/es/ConfigProvider-CEpMMWnQ.js.map +1 -0
  100. package/dist/es/ConfigProvider.js +3 -3
  101. package/dist/es/DatePicker-B9x_XWB1.js +70 -0
  102. package/dist/es/DatePicker-B9x_XWB1.js.map +1 -0
  103. package/dist/es/DatePicker.js +1 -1
  104. package/dist/es/Dialog-D352OHaM.js +63 -0
  105. package/dist/es/Dialog-D352OHaM.js.map +1 -0
  106. package/dist/es/Dialog.js +1 -1
  107. package/dist/es/Form-O4Tch1uv.js +52 -0
  108. package/dist/es/Form-O4Tch1uv.js.map +1 -0
  109. package/dist/es/Form.js +1 -1
  110. package/dist/es/FormItem-WyWiRiOb.js +41 -0
  111. package/dist/es/FormItem-WyWiRiOb.js.map +1 -0
  112. package/dist/es/FormItem.js +1 -1
  113. package/dist/es/{Input-JT0g3gkf.js → Input-CISC6G6X.js} +25 -25
  114. package/dist/es/Input-CISC6G6X.js.map +1 -0
  115. package/dist/es/Input.js +1 -1
  116. package/dist/es/InputNumber-hPI3X5v1.js +70 -0
  117. package/dist/es/InputNumber-hPI3X5v1.js.map +1 -0
  118. package/dist/es/InputNumber.js +1 -1
  119. package/dist/es/Pagination-9blNkPhL.js +54 -0
  120. package/dist/es/Pagination-9blNkPhL.js.map +1 -0
  121. package/dist/es/Pagination.js +1 -1
  122. package/dist/es/{Select-DNpw-ydO.js → Select-BbNB6mtB.js} +40 -36
  123. package/dist/es/Select-BbNB6mtB.js.map +1 -0
  124. package/dist/es/Select.js +1 -1
  125. package/dist/es/TabPane-8Kl4Y2vo.js +34 -0
  126. package/dist/es/TabPane-8Kl4Y2vo.js.map +1 -0
  127. package/dist/es/TabPane.js +1 -1
  128. package/dist/es/{Table-Cm_Dki-c.js → Table-CDSvNzQX.js} +36 -29
  129. package/dist/es/Table-CDSvNzQX.js.map +1 -0
  130. package/dist/es/Table.js +1 -1
  131. package/dist/es/Tabs-BE8GuCPk.js +42 -0
  132. package/dist/es/Tabs-BE8GuCPk.js.map +1 -0
  133. package/dist/es/Tabs.js +1 -1
  134. package/dist/es/Upload-B1BTrgWK.js +65 -0
  135. package/dist/es/Upload-B1BTrgWK.js.map +1 -0
  136. package/dist/es/Upload.js +1 -1
  137. package/dist/es/XButtonAsync-BkjZagL2.js +45 -0
  138. package/dist/es/XButtonAsync-BkjZagL2.js.map +1 -0
  139. package/dist/es/XButtonAsync.js +20 -0
  140. package/dist/es/XButtonConfirm-YMfFf6rs.js +61 -0
  141. package/dist/es/XButtonConfirm-YMfFf6rs.js.map +1 -0
  142. package/dist/es/XButtonConfirm.js +20 -0
  143. package/dist/es/XFormFlex-z1GXxWu7.js +35 -0
  144. package/dist/es/XFormFlex-z1GXxWu7.js.map +1 -0
  145. package/dist/es/XFormFlex.js +20 -0
  146. package/dist/es/XFormRequestNext-CJrJVNUm.js +59 -0
  147. package/dist/es/XFormRequestNext-CJrJVNUm.js.map +1 -0
  148. package/dist/es/XFormRequestNext.js +20 -0
  149. package/dist/es/XRequest-xq6n4Et2.js +47 -0
  150. package/dist/es/XRequest-xq6n4Et2.js.map +1 -0
  151. package/dist/es/XRequest.js +2 -0
  152. package/dist/es/XSelectRequest-DTo9sziO.js +85 -0
  153. package/dist/es/XSelectRequest-DTo9sziO.js.map +1 -0
  154. package/dist/es/XSelectRequest.js +20 -0
  155. package/dist/es/XTableFlex-DvI8a43S.js +75 -0
  156. package/dist/es/XTableFlex-DvI8a43S.js.map +1 -0
  157. package/dist/es/XTableFlex.js +20 -0
  158. package/dist/es/XTableRequestConfigNext.js +28 -0
  159. package/dist/es/XTableRequestNext.js +28 -0
  160. package/dist/es/XUploadOssNext-Iu4j5ilc.js +15 -0
  161. package/dist/es/XUploadOssNext-Iu4j5ilc.js.map +1 -0
  162. package/dist/es/XUploadOssNext.js +2 -0
  163. package/dist/es/advance-CxLGYXzG.js +1464 -0
  164. package/dist/es/advance-CxLGYXzG.js.map +1 -0
  165. package/dist/es/advance.js +28 -0
  166. package/dist/es/basic-D2nqjZxe.js +44 -0
  167. package/dist/es/basic-D2nqjZxe.js.map +1 -0
  168. package/dist/es/constants-C_Llxhb6.js +6 -0
  169. package/dist/es/constants-C_Llxhb6.js.map +1 -0
  170. package/dist/es/dist-DQ3VOl3T.js +151 -0
  171. package/dist/es/dist-DQ3VOl3T.js.map +1 -0
  172. package/dist/es/{en-BAY1fB2Q.js → en-CBGOP-x1.js} +1 -1
  173. package/dist/es/{en-BAY1fB2Q.js.map → en-CBGOP-x1.js.map} +1 -1
  174. package/dist/es/en.js +1 -1
  175. package/dist/es/index.js +49 -23
  176. package/dist/es/index.js.map +1 -1
  177. package/dist/es/index2.js +2 -2
  178. package/dist/es/resolver.js +24 -7
  179. package/dist/es/resolver.js.map +1 -1
  180. package/dist/es/{zh-cn-UaM4b5St.js → zh-cn-1zFf6cPm.js} +1 -1
  181. package/dist/es/{zh-cn-UaM4b5St.js.map → zh-cn-1zFf6cPm.js.map} +1 -1
  182. package/dist/es/zh-cn.js +1 -1
  183. package/dist/types/advance.d.ts +1 -0
  184. package/dist/types/components/advance/XButtonAsync.vue.d.ts +21 -0
  185. package/dist/types/components/{ButtonPopconfirm.vue.d.ts → advance/XButtonConfirm.vue.d.ts} +6 -6
  186. package/dist/types/components/advance/XFormFlex.vue.d.ts +19 -0
  187. package/dist/types/components/advance/XFormRequestNext.vue.d.ts +53 -0
  188. package/dist/types/components/advance/XRequest.vue.d.ts +74 -0
  189. package/dist/types/components/advance/XSelectRequest.vue.d.ts +53 -0
  190. package/dist/types/components/advance/XTableFlex.vue.d.ts +53 -0
  191. package/dist/types/components/advance/XTableRequestConfigNext.vue.d.ts +67 -0
  192. package/dist/types/components/advance/XTableRequestNext.vue.d.ts +88 -0
  193. package/dist/types/components/advance/XUploadOssNext.vue.d.ts +2 -0
  194. package/dist/types/components/advance.d.ts +35 -0
  195. package/dist/types/components/{Button.vue.d.ts → basic/Button.vue.d.ts} +8 -2
  196. package/dist/types/components/basic/Checkbox.vue.d.ts +22 -0
  197. package/dist/types/components/{DatePicker.vue.d.ts → basic/DatePicker.vue.d.ts} +1 -1
  198. package/dist/types/components/{Form.vue.d.ts → basic/Form.vue.d.ts} +1 -0
  199. package/dist/types/components/{Input.vue.d.ts → basic/Input.vue.d.ts} +1 -1
  200. package/dist/types/components/{Pagination.vue.d.ts → basic/Pagination.vue.d.ts} +1 -0
  201. package/dist/types/components/{Select.vue.d.ts → basic/Select.vue.d.ts} +8 -3
  202. package/dist/types/components/{Table.vue.d.ts → basic/Table.vue.d.ts} +22 -6
  203. package/dist/types/components/{Tabs.vue.d.ts → basic/Tabs.vue.d.ts} +8 -2
  204. package/dist/types/components/{Upload.vue.d.ts → basic/Upload.vue.d.ts} +2 -0
  205. package/dist/types/components/basic.d.ts +31 -0
  206. package/dist/types/constants/index.d.ts +4 -1
  207. package/dist/types/index.d.ts +2 -1
  208. package/dist/types/install.d.ts +11 -1
  209. package/dist/types/resolver.d.ts +3 -1
  210. package/dist/types/types.d.ts +56 -0
  211. package/package.json +14 -4
  212. package/dist/cjs/Button-Dkqk8lXH.cjs +0 -2
  213. package/dist/cjs/Button-Dkqk8lXH.cjs.map +0 -1
  214. package/dist/cjs/ButtonPopconfirm.cjs +0 -1
  215. package/dist/cjs/ConfigProvider-lII820wO.cjs +0 -2
  216. package/dist/cjs/ConfigProvider-lII820wO.cjs.map +0 -1
  217. package/dist/cjs/DatePicker-Bs1ylK57.cjs +0 -2
  218. package/dist/cjs/DatePicker-Bs1ylK57.cjs.map +0 -1
  219. package/dist/cjs/Dialog-CSSTtlWY.cjs.map +0 -1
  220. package/dist/cjs/Form-269B6UNo.cjs +0 -2
  221. package/dist/cjs/Form-269B6UNo.cjs.map +0 -1
  222. package/dist/cjs/FormItem-DT2H_f3C.cjs +0 -2
  223. package/dist/cjs/FormItem-DT2H_f3C.cjs.map +0 -1
  224. package/dist/cjs/Input-DuZALrON.cjs +0 -2
  225. package/dist/cjs/Input-DuZALrON.cjs.map +0 -1
  226. package/dist/cjs/InputNumber-DPd4h9mJ.cjs +0 -2
  227. package/dist/cjs/InputNumber-DPd4h9mJ.cjs.map +0 -1
  228. package/dist/cjs/Pagination-C6JSioze.cjs +0 -2
  229. package/dist/cjs/Pagination-C6JSioze.cjs.map +0 -1
  230. package/dist/cjs/Select-DbiBYKYx.cjs +0 -2
  231. package/dist/cjs/Select-DbiBYKYx.cjs.map +0 -1
  232. package/dist/cjs/TabPane-6xH7oG0B.cjs +0 -2
  233. package/dist/cjs/TabPane-6xH7oG0B.cjs.map +0 -1
  234. package/dist/cjs/Table-DpQglHP2.cjs +0 -2
  235. package/dist/cjs/Table-DpQglHP2.cjs.map +0 -1
  236. package/dist/cjs/Tabs-BjfrK6HM.cjs +0 -2
  237. package/dist/cjs/Tabs-BjfrK6HM.cjs.map +0 -1
  238. package/dist/cjs/Upload-DxAM_SRp.cjs +0 -2
  239. package/dist/cjs/Upload-DxAM_SRp.cjs.map +0 -1
  240. package/dist/cjs/components-H3u1l6SK.cjs +0 -2
  241. package/dist/cjs/components-H3u1l6SK.cjs.map +0 -1
  242. package/dist/cjs/constants-C1UtNKNR.cjs +0 -2
  243. package/dist/cjs/constants-C1UtNKNR.cjs.map +0 -1
  244. package/dist/cjs/dist-jkU1Ff2x.cjs +0 -2
  245. package/dist/cjs/dist-jkU1Ff2x.cjs.map +0 -1
  246. package/dist/es/Button-BgxatYKq.js +0 -37
  247. package/dist/es/Button-BgxatYKq.js.map +0 -1
  248. package/dist/es/ButtonPopconfirm.js +0 -18
  249. package/dist/es/ConfigProvider-BlRc251T.js.map +0 -1
  250. package/dist/es/DatePicker-DEQxQ4xR.js +0 -70
  251. package/dist/es/DatePicker-DEQxQ4xR.js.map +0 -1
  252. package/dist/es/Dialog-BKSJCB-R.js +0 -63
  253. package/dist/es/Dialog-BKSJCB-R.js.map +0 -1
  254. package/dist/es/Form-wBMmnwZj.js +0 -44
  255. package/dist/es/Form-wBMmnwZj.js.map +0 -1
  256. package/dist/es/FormItem-DFIl76qa.js +0 -41
  257. package/dist/es/FormItem-DFIl76qa.js.map +0 -1
  258. package/dist/es/Input-JT0g3gkf.js.map +0 -1
  259. package/dist/es/InputNumber-CFTLdulD.js +0 -70
  260. package/dist/es/InputNumber-CFTLdulD.js.map +0 -1
  261. package/dist/es/Pagination-CGeelxQR.js +0 -44
  262. package/dist/es/Pagination-CGeelxQR.js.map +0 -1
  263. package/dist/es/Select-DNpw-ydO.js.map +0 -1
  264. package/dist/es/TabPane-CzInYf67.js +0 -34
  265. package/dist/es/TabPane-CzInYf67.js.map +0 -1
  266. package/dist/es/Table-Cm_Dki-c.js.map +0 -1
  267. package/dist/es/Tabs-CKIkuQ81.js +0 -40
  268. package/dist/es/Tabs-CKIkuQ81.js.map +0 -1
  269. package/dist/es/Upload-BPg4xGOl.js +0 -61
  270. package/dist/es/Upload-BPg4xGOl.js.map +0 -1
  271. package/dist/es/components-CTV9E5y1.js +0 -91
  272. package/dist/es/components-CTV9E5y1.js.map +0 -1
  273. package/dist/es/constants-TVJ7auaC.js +0 -6
  274. package/dist/es/constants-TVJ7auaC.js.map +0 -1
  275. package/dist/es/dist-BPi3_vgC.js +0 -30
  276. package/dist/es/dist-BPi3_vgC.js.map +0 -1
  277. package/dist/types/components/index.d.ts +0 -50
  278. /package/dist/types/components/{ConfigProvider.vue.d.ts → basic/ConfigProvider.vue.d.ts} +0 -0
  279. /package/dist/types/components/{Dialog.vue.d.ts → basic/Dialog.vue.d.ts} +0 -0
  280. /package/dist/types/components/{FormItem.vue.d.ts → basic/FormItem.vue.d.ts} +0 -0
  281. /package/dist/types/components/{InputNumber.vue.d.ts → basic/InputNumber.vue.d.ts} +0 -0
  282. /package/dist/types/components/{TabPane.vue.d.ts → basic/TabPane.vue.d.ts} +0 -0
@@ -0,0 +1,41 @@
1
+ import { a as e, c as t, d as n, o as r, s as i, u as a } from "./constants-C_Llxhb6.js";
2
+ import { ElFormItem as o } from "element-plus";
3
+ import { createBlock as s, createVNode as c, defineComponent as l, inject as u, openBlock as d, provide as f, ref as p, unref as m, withCtx as h } from "vue";
4
+ //#endregion
5
+ //#region src/components/basic/FormItem.vue
6
+ var g = /* @__PURE__ */ l({
7
+ __name: "FormItem",
8
+ props: {
9
+ content: { type: Function },
10
+ label: {},
11
+ required: { type: Boolean },
12
+ validator: { type: Function }
13
+ },
14
+ setup(l) {
15
+ let g = u(t, void 0), _ = u(e, void 0), v = u(r, void 0), y = u(n, void 0), b = u(a, void 0), x = p(), S = {
16
+ clearValidate: () => x.value = void 0,
17
+ label: l.label,
18
+ required: l.required,
19
+ validator: l.validator,
20
+ validate: () => (x.value = S.validator?.() ?? void 0, x.value && _ && v && y && b?.trigger(y), !x.value)
21
+ };
22
+ g?.push(S), f(i, S);
23
+ let C = () => l.content?.();
24
+ return (e, t) => (d(), s(m(o), {
25
+ label: l.label,
26
+ required: l.required,
27
+ error: x.value
28
+ }, {
29
+ default: h(() => [c(C)]),
30
+ _: 1
31
+ }, 8, [
32
+ "label",
33
+ "required",
34
+ "error"
35
+ ]));
36
+ }
37
+ });
38
+ //#endregion
39
+ export { g as t };
40
+
41
+ //# sourceMappingURL=FormItem-WyWiRiOb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormItem-WyWiRiOb.js","names":[],"sources":["../../src/components/basic/FormItem.vue","../../src/components/basic/FormItem.vue"],"sourcesContent":["<script setup lang=\"tsx\" generic=\"D extends object\">\r\nimport type { VNodeChild } from 'vue'\r\nimport { ElFormItem } from 'element-plus'\r\nimport { inject, provide, ref } from 'vue'\r\nimport { X_ELEMENT_IN_TAB_PANE, X_ELEMENT_IN_TABS, X_FORM_ITEM_VALIDATION, X_FORM_VALIDATIONS, X_TAB_PANE_NAME, X_TABS_MODEL_UPDATE_HOOK } from '@/constants'\r\n\r\nexport interface XFormItemProps {\r\n content?: () => VNodeChild\r\n label?: string\r\n required?: boolean\r\n validator?: () => string | void\r\n}\r\n\r\nexport interface XFormItemValidation {\r\n clearValidate: () => void\r\n label?: string\r\n required?: boolean\r\n validate: () => boolean\r\n validator?: () => string | void\r\n}\r\n\r\nconst { content, label, required, validator } = defineProps<XFormItemProps>()\r\n\r\ndefineSlots<{\r\n default: () => VNodeChild\r\n label: () => VNodeChild\r\n}>()\r\n\r\nconst validations = inject(X_FORM_VALIDATIONS, undefined)\r\nconst inTabs = inject(X_ELEMENT_IN_TABS, undefined)\r\nconst inTabPane = inject(X_ELEMENT_IN_TAB_PANE, undefined)\r\nconst tabPaneName = inject(X_TAB_PANE_NAME, undefined)\r\nconst tabsUpdateModelHook = inject(X_TABS_MODEL_UPDATE_HOOK, undefined)\r\n\r\nconst error = ref<string | undefined>()\r\n\r\nconst validation: XFormItemValidation = {\r\n clearValidate: () => error.value = undefined,\r\n label,\r\n required,\r\n validator,\r\n validate: () => {\r\n error.value = validation.validator?.() ?? undefined\r\n\r\n if (error.value && inTabs && inTabPane && tabPaneName) {\r\n tabsUpdateModelHook?.trigger(tabPaneName)\r\n }\r\n\r\n return !error.value\r\n }\r\n}\r\nvalidations?.push(validation)\r\nprovide(X_FORM_ITEM_VALIDATION, validation)\r\n\r\nconst Content = () => content?.()\r\n</script>\r\n\r\n<template>\r\n <ElFormItem :label=\"label\" :required=\"required\" :error=\"error\">\r\n <Content />\r\n </ElFormItem>\r\n</template>\r\n","<script setup lang=\"tsx\" generic=\"D extends object\">\r\nimport type { VNodeChild } from 'vue'\r\nimport { ElFormItem } from 'element-plus'\r\nimport { inject, provide, ref } from 'vue'\r\nimport { X_ELEMENT_IN_TAB_PANE, X_ELEMENT_IN_TABS, X_FORM_ITEM_VALIDATION, X_FORM_VALIDATIONS, X_TAB_PANE_NAME, X_TABS_MODEL_UPDATE_HOOK } from '@/constants'\r\n\r\nexport interface XFormItemProps {\r\n content?: () => VNodeChild\r\n label?: string\r\n required?: boolean\r\n validator?: () => string | void\r\n}\r\n\r\nexport interface XFormItemValidation {\r\n clearValidate: () => void\r\n label?: string\r\n required?: boolean\r\n validate: () => boolean\r\n validator?: () => string | void\r\n}\r\n\r\nconst { content, label, required, validator } = defineProps<XFormItemProps>()\r\n\r\ndefineSlots<{\r\n default: () => VNodeChild\r\n label: () => VNodeChild\r\n}>()\r\n\r\nconst validations = inject(X_FORM_VALIDATIONS, undefined)\r\nconst inTabs = inject(X_ELEMENT_IN_TABS, undefined)\r\nconst inTabPane = inject(X_ELEMENT_IN_TAB_PANE, undefined)\r\nconst tabPaneName = inject(X_TAB_PANE_NAME, undefined)\r\nconst tabsUpdateModelHook = inject(X_TABS_MODEL_UPDATE_HOOK, undefined)\r\n\r\nconst error = ref<string | undefined>()\r\n\r\nconst validation: XFormItemValidation = {\r\n clearValidate: () => error.value = undefined,\r\n label,\r\n required,\r\n validator,\r\n validate: () => {\r\n error.value = validation.validator?.() ?? undefined\r\n\r\n if (error.value && inTabs && inTabPane && tabPaneName) {\r\n tabsUpdateModelHook?.trigger(tabPaneName)\r\n }\r\n\r\n return !error.value\r\n }\r\n}\r\nvalidations?.push(validation)\r\nprovide(X_FORM_ITEM_VALIDATION, validation)\r\n\r\nconst Content = () => content?.()\r\n</script>\r\n\r\n<template>\r\n <ElFormItem :label=\"label\" :required=\"required\" :error=\"error\">\r\n <Content />\r\n </ElFormItem>\r\n</template>\r\n"],"mappings":";;;;;;;;;;;;;;EC4BA,IAAM,IAAc,EAAO,GAAoB,KAAA,EAAU,EACnD,IAAS,EAAO,GAAmB,KAAA,EAAU,EAC7C,IAAY,EAAO,GAAuB,KAAA,EAAU,EACpD,IAAc,EAAO,GAAiB,KAAA,EAAU,EAChD,IAAsB,EAAO,GAA0B,KAAA,EAAU,EAEjE,IAAQ,GAAyB,EAEjC,IAAkC;GACtC,qBAAqB,EAAM,QAAQ,KAAA;GACnC,OAAI,EAAA;GACJ,UAAO,EAAA;GACP,WAAQ,EAAA;GACR,iBACE,EAAM,QAAQ,EAAW,aAAa,IAAI,KAAA,GAEtC,EAAM,SAAS,KAAU,KAAa,KACxC,GAAqB,QAAQ,EAAY,EAGpC,CAAC,EAAM;GAEjB;AAED,EADA,GAAa,KAAK,EAAW,EAC7B,EAAQ,GAAwB,EAAW;EAE3C,IAAM,UAAgB,EAAA,WAAW;yBAI/B,EAEa,EAAA,EAAA,EAAA;GAFA,OAAO,EAAA;GAAQ,UAAU,EAAA;GAAW,OAAO,EAAA;;oBAC3C,CAAX,EAAW,EAAA,CAAA,CAAA"}
@@ -1,2 +1,2 @@
1
- import { t as e } from "./FormItem-DFIl76qa.js";
1
+ import { t as e } from "./FormItem-WyWiRiOb.js";
2
2
  export { e as default };
@@ -1,11 +1,11 @@
1
- import { c as e, o as t } from "./constants-TVJ7auaC.js";
2
- import { createBlock as n, createSlots as r, defineComponent as i, inject as a, mergeModels as o, mergeProps as s, openBlock as c, renderSlot as l, unref as u, useModel as d, withCtx as f } from "vue";
3
- import { ElInput as p, useLocale as m } from "element-plus";
1
+ import { l as e, s as t } from "./constants-C_Llxhb6.js";
2
+ import { ElInput as n, useLocale as r } from "element-plus";
3
+ import { createBlock as i, createSlots as a, defineComponent as o, inject as s, mergeModels as c, mergeProps as l, openBlock as u, renderSlot as d, unref as f, useModel as p, withCtx as m } from "vue";
4
4
  //#endregion
5
- //#region src/components/Input.vue
6
- var h = /* @__PURE__ */ i({
5
+ //#region src/components/basic/Input.vue
6
+ var h = /* @__PURE__ */ o({
7
7
  __name: "Input",
8
- props: /* @__PURE__ */ o({
8
+ props: /* @__PURE__ */ c({
9
9
  clearable: { type: Boolean },
10
10
  disabled: {
11
11
  type: Boolean,
@@ -23,58 +23,58 @@ var h = /* @__PURE__ */ i({
23
23
  modelValue: {},
24
24
  modelModifiers: {}
25
25
  }),
26
- emits: /* @__PURE__ */ o([
26
+ emits: /* @__PURE__ */ c([
27
27
  "blur",
28
28
  "focus",
29
29
  "change"
30
30
  ], ["update:modelValue"]),
31
- setup(i, { emit: o }) {
32
- let h = o, g = d(i, "modelValue"), { t: _ } = m(a(e)), v = a(t, void 0);
31
+ setup(o, { emit: c }) {
32
+ let h = c, g = p(o, "modelValue"), { t: _ } = r(s(e)), v = s(t, void 0);
33
33
  if (v?.required) {
34
34
  let { label: e, validator: t } = v;
35
35
  v.validator = () => g.value ? t?.() : `请输入${e}`;
36
36
  }
37
37
  let y = (e) => {
38
- v?.validate?.(), h("blur", e);
38
+ h("blur", e), v?.validate?.();
39
39
  }, b = (e) => {
40
40
  h("focus", e);
41
41
  }, x = (e) => {
42
42
  h("change", e);
43
43
  };
44
- return (e, t) => (c(), n(u(p), s({
45
- disabled: i.disabled,
46
- type: i.type,
47
- size: i.size,
48
- clearable: i.clearable,
49
- showPassword: i.showPassword,
50
- autocomplete: i.autocomplete,
51
- autosize: i.autosize,
52
- placeholder: i.placeholder ?? u(_)("el.input.placeholder")
44
+ return (e, t) => (u(), i(f(n), l({
45
+ disabled: o.disabled,
46
+ type: o.type,
47
+ size: o.size,
48
+ clearable: o.clearable,
49
+ showPassword: o.showPassword,
50
+ autocomplete: o.autocomplete,
51
+ autosize: o.autosize,
52
+ placeholder: o.placeholder ?? f(_)("el.input.placeholder")
53
53
  }, {
54
54
  modelValue: g.value,
55
55
  "onUpdate:modelValue": t[0] ||= (e) => g.value = e,
56
56
  onBlur: y,
57
57
  onFocus: b,
58
58
  onChange: x
59
- }), r({ _: 2 }, [
59
+ }), a({ _: 2 }, [
60
60
  "append" in e.$slots ? {
61
61
  name: "append",
62
- fn: f(() => [l(e.$slots, "append")]),
62
+ fn: m(() => [d(e.$slots, "append")]),
63
63
  key: "0"
64
64
  } : void 0,
65
65
  "prepend" in e.$slots ? {
66
66
  name: "prepend",
67
- fn: f(() => [l(e.$slots, "prepend")]),
67
+ fn: m(() => [d(e.$slots, "prepend")]),
68
68
  key: "1"
69
69
  } : void 0,
70
70
  "prefix" in e.$slots ? {
71
71
  name: "prefix",
72
- fn: f(() => [l(e.$slots, "prefix")]),
72
+ fn: m(() => [d(e.$slots, "prefix")]),
73
73
  key: "2"
74
74
  } : void 0,
75
75
  "suffix" in e.$slots ? {
76
76
  name: "suffix",
77
- fn: f(() => [l(e.$slots, "suffix")]),
77
+ fn: m(() => [d(e.$slots, "suffix")]),
78
78
  key: "3"
79
79
  } : void 0
80
80
  ]), 1040, ["modelValue"]));
@@ -83,4 +83,4 @@ var h = /* @__PURE__ */ i({
83
83
  //#endregion
84
84
  export { h as t };
85
85
 
86
- //# sourceMappingURL=Input-JT0g3gkf.js.map
86
+ //# sourceMappingURL=Input-CISC6G6X.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input-CISC6G6X.js","names":["$slots"],"sources":["../../src/components/basic/Input.vue","../../src/components/basic/Input.vue"],"sourcesContent":["<script setup lang=\"tsx\" generic=\"MV extends string | number\">\r\nimport type { InputProps } from 'element-plus'\r\nimport type { VNode } from 'vue'\r\nimport { ElInput, useLocale } from 'element-plus'\r\nimport { inject } from 'vue'\r\n\r\nimport { X_FORM_ITEM_VALIDATION, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XInputProps {\r\n clearable?: InputProps['clearable']\r\n disabled?: InputProps['disabled']\r\n size?: InputProps['size']\r\n type?: InputProps['type']\r\n showPassword?: InputProps['showPassword']\r\n autocomplete?: InputProps['autocomplete']\r\n autosize?: InputProps['autosize']\r\n placeholder?: InputProps['placeholder']\r\n prefixIcon?: InputProps['prefixIcon']\r\n suffixIcon?: InputProps['suffixIcon']\r\n}\r\n\r\nconst { disabled = undefined } = defineProps<XInputProps>()\r\nconst emit = defineEmits<{\r\n blur: [e: FocusEvent]\r\n focus: [e: FocusEvent]\r\n change: [e: MV]\r\n}>()\r\ndefineSlots<{\r\n append: () => VNode\r\n prefix: () => VNode\r\n prepend: () => VNode\r\n suffix: () => VNode\r\n}>()\r\nconst model = defineModel<MV>()\r\n\r\n// const inTable = inject(X_ELEMENT_IN_TABLE, false)\r\n// const inTableColumn = inject(X_ELEMENT_IN_TABLE_COLUMN, false)\r\n\r\nconst locale = inject(X_LOCALE_CONFIG)\r\nconst { t } = useLocale(locale)\r\n\r\nconst formItemValidation = inject(X_FORM_ITEM_VALIDATION, undefined)\r\n\r\nif (formItemValidation?.required) {\r\n const { label, validator } = formItemValidation\r\n formItemValidation.validator = () => {\r\n if (!model.value) {\r\n return `请输入${label}`\r\n }\r\n return validator?.()\r\n }\r\n}\r\n\r\nconst blur = (e: FocusEvent) => {\r\n emit('blur', e)\r\n formItemValidation?.validate?.()\r\n}\r\nconst focus = (e: FocusEvent) => {\r\n emit('focus', e)\r\n}\r\nconst change = (value: string) => {\r\n emit('change', value as MV)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElInput\r\n v-bind=\"{\r\n disabled,\r\n type,\r\n size,\r\n clearable,\r\n showPassword,\r\n autocomplete,\r\n autosize,\r\n placeholder: placeholder ?? t('el.input.placeholder'),\r\n }\"\r\n v-model=\"model\"\r\n @blur=\"blur\"\r\n @focus=\"focus\"\r\n @change=\"change\"\r\n >\r\n <template v-if=\"'append' in $slots\" #append>\r\n <slot name=\"append\" />\r\n </template>\r\n <template v-if=\"'prepend' in $slots\" #prepend>\r\n <slot name=\"prepend\" />\r\n </template>\r\n <template v-if=\"'prefix' in $slots\" #prefix>\r\n <slot name=\"prefix\" />\r\n </template>\r\n <template v-if=\"'suffix' in $slots\" #suffix>\r\n <slot name=\"suffix\" />\r\n </template>\r\n </ElInput>\r\n</template>\r\n","<script setup lang=\"tsx\" generic=\"MV extends string | number\">\r\nimport type { InputProps } from 'element-plus'\r\nimport type { VNode } from 'vue'\r\nimport { ElInput, useLocale } from 'element-plus'\r\nimport { inject } from 'vue'\r\n\r\nimport { X_FORM_ITEM_VALIDATION, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XInputProps {\r\n clearable?: InputProps['clearable']\r\n disabled?: InputProps['disabled']\r\n size?: InputProps['size']\r\n type?: InputProps['type']\r\n showPassword?: InputProps['showPassword']\r\n autocomplete?: InputProps['autocomplete']\r\n autosize?: InputProps['autosize']\r\n placeholder?: InputProps['placeholder']\r\n prefixIcon?: InputProps['prefixIcon']\r\n suffixIcon?: InputProps['suffixIcon']\r\n}\r\n\r\nconst { disabled = undefined } = defineProps<XInputProps>()\r\nconst emit = defineEmits<{\r\n blur: [e: FocusEvent]\r\n focus: [e: FocusEvent]\r\n change: [e: MV]\r\n}>()\r\ndefineSlots<{\r\n append: () => VNode\r\n prefix: () => VNode\r\n prepend: () => VNode\r\n suffix: () => VNode\r\n}>()\r\nconst model = defineModel<MV>()\r\n\r\n// const inTable = inject(X_ELEMENT_IN_TABLE, false)\r\n// const inTableColumn = inject(X_ELEMENT_IN_TABLE_COLUMN, false)\r\n\r\nconst locale = inject(X_LOCALE_CONFIG)\r\nconst { t } = useLocale(locale)\r\n\r\nconst formItemValidation = inject(X_FORM_ITEM_VALIDATION, undefined)\r\n\r\nif (formItemValidation?.required) {\r\n const { label, validator } = formItemValidation\r\n formItemValidation.validator = () => {\r\n if (!model.value) {\r\n return `请输入${label}`\r\n }\r\n return validator?.()\r\n }\r\n}\r\n\r\nconst blur = (e: FocusEvent) => {\r\n emit('blur', e)\r\n formItemValidation?.validate?.()\r\n}\r\nconst focus = (e: FocusEvent) => {\r\n emit('focus', e)\r\n}\r\nconst change = (value: string) => {\r\n emit('change', value as MV)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElInput\r\n v-bind=\"{\r\n disabled,\r\n type,\r\n size,\r\n clearable,\r\n showPassword,\r\n autocomplete,\r\n autosize,\r\n placeholder: placeholder ?? t('el.input.placeholder'),\r\n }\"\r\n v-model=\"model\"\r\n @blur=\"blur\"\r\n @focus=\"focus\"\r\n @change=\"change\"\r\n >\r\n <template v-if=\"'append' in $slots\" #append>\r\n <slot name=\"append\" />\r\n </template>\r\n <template v-if=\"'prepend' in $slots\" #prepend>\r\n <slot name=\"prepend\" />\r\n </template>\r\n <template v-if=\"'prefix' in $slots\" #prefix>\r\n <slot name=\"prefix\" />\r\n </template>\r\n <template v-if=\"'suffix' in $slots\" #suffix>\r\n <slot name=\"suffix\" />\r\n </template>\r\n </ElInput>\r\n</template>\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ECsBA,IAAM,IAAO,GAWP,IAAQ,EAAe,GAAA,aAAE,EAMzB,EAAE,SAAM,EADC,EAAO,EAAgB,CACP,EAEzB,IAAqB,EAAO,GAAwB,KAAA,EAAU;AAEpE,MAAI,GAAoB,UAAU;GAChC,IAAM,EAAE,UAAO,iBAAc;AAC7B,KAAmB,kBACZ,EAAM,QAGJ,KAAa,GAFX,MAAM;;EAMnB,IAAM,KAAQ,MAAkB;AAE9B,GADA,EAAK,QAAQ,EAAE,EACf,GAAoB,YAAY;KAE5B,KAAS,MAAkB;AAC/B,KAAK,SAAS,EAAE;KAEZ,KAAU,MAAkB;AAChC,KAAK,UAAU,EAAY;;yBAK3B,EA4BU,EAAA,EAAA,EA5BV,EA4BU;aA3BS,EAAA;SAAiB,EAAA;SAAa,EAAA;cAAa,EAAA;iBAAkB,EAAA;iBAAqB,EAAA;aAAqB,EAAA;gBAA8B,EAAA,eAAe,EAAA,EAAC,CAAA,uBAAA;;eAU7J,EAAA;0CAAA,EAAK,QAAA;GACb,QAAM;GACN,SAAO;GACP,UAAQ;;eAEmBA,EAAAA,SAAAA;UAAS;gBACb,CAAtB,EAAsB,EAAA,QAAA,SAAA,CAAA,CAAA;;;gBAEKA,EAAAA,SAAAA;UAAS;gBACb,CAAvB,EAAuB,EAAA,QAAA,UAAA,CAAA,CAAA;;;eAEGA,EAAAA,SAAAA;UAAS;gBACb,CAAtB,EAAsB,EAAA,QAAA,SAAA,CAAA,CAAA;;;eAEIA,EAAAA,SAAAA;UAAS;gBACb,CAAtB,EAAsB,EAAA,QAAA,SAAA,CAAA,CAAA"}
package/dist/es/Input.js CHANGED
@@ -1,2 +1,2 @@
1
- import { t as e } from "./Input-JT0g3gkf.js";
1
+ import { t as e } from "./Input-CISC6G6X.js";
2
2
  export { e as default };
@@ -0,0 +1,70 @@
1
+ import { l as e, s as t } from "./constants-C_Llxhb6.js";
2
+ import { ElInputNumber as n, useLocale as r } from "element-plus";
3
+ import { createBlock as i, createSlots as a, defineComponent as o, inject as s, mergeModels as c, mergeProps as l, openBlock as u, renderSlot as d, unref as f, useModel as p, withCtx as m } from "vue";
4
+ //#endregion
5
+ //#region src/components/basic/InputNumber.vue
6
+ var h = /* @__PURE__ */ o({
7
+ __name: "InputNumber",
8
+ props: /* @__PURE__ */ c({
9
+ align: {},
10
+ controls: { type: Boolean },
11
+ disabled: {
12
+ type: Boolean,
13
+ default: () => void 0
14
+ },
15
+ inputmode: {},
16
+ max: {},
17
+ min: {},
18
+ placeholder: {},
19
+ precision: {},
20
+ size: {},
21
+ step: {},
22
+ stepStrictly: { type: Boolean }
23
+ }, {
24
+ modelValue: {},
25
+ modelModifiers: {}
26
+ }),
27
+ emits: /* @__PURE__ */ c(["blur", "focus"], ["update:modelValue"]),
28
+ setup(o, { emit: c }) {
29
+ let h = c, g = p(o, "modelValue"), { t: _ } = r(s(e)), v = s(t, void 0);
30
+ if (v?.required) {
31
+ let { label: e, validator: t } = v;
32
+ v.validator = () => g.value ? t?.() : `请输入${e}`;
33
+ }
34
+ let y = (e) => {
35
+ h("focus", e);
36
+ }, b = (e) => {
37
+ h("blur", e);
38
+ };
39
+ return (e, t) => (u(), i(f(n), l({
40
+ align: o.align,
41
+ controls: o.controls,
42
+ disabled: o.disabled,
43
+ inputmode: o.inputmode,
44
+ max: o.max,
45
+ min: o.min,
46
+ placeholder: o.placeholder ?? f(_)("el.inputNumber.placeholder"),
47
+ precision: o.precision,
48
+ size: o.size,
49
+ step: o.step,
50
+ stepStrictly: o.stepStrictly
51
+ }, {
52
+ modelValue: g.value,
53
+ "onUpdate:modelValue": t[0] ||= (e) => g.value = e,
54
+ onBlur: b,
55
+ onFocus: y
56
+ }), a({ _: 2 }, ["prefix" in e.$slots ? {
57
+ name: "prefix",
58
+ fn: m(() => [d(e.$slots, "prefix")]),
59
+ key: "0"
60
+ } : void 0, "suffix" in e.$slots ? {
61
+ name: "suffix",
62
+ fn: m(() => [d(e.$slots, "suffix")]),
63
+ key: "1"
64
+ } : void 0]), 1040, ["modelValue"]));
65
+ }
66
+ });
67
+ //#endregion
68
+ export { h as t };
69
+
70
+ //# sourceMappingURL=InputNumber-hPI3X5v1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputNumber-hPI3X5v1.js","names":["$slots"],"sources":["../../src/components/basic/InputNumber.vue","../../src/components/basic/InputNumber.vue"],"sourcesContent":["<script setup lang=\"tsx\">\r\nimport type { InputNumberProps } from 'element-plus'\r\nimport type { VNode } from 'vue'\r\nimport { ElInputNumber, useLocale } from 'element-plus'\r\nimport { inject } from 'vue'\r\n\r\nimport { X_FORM_ITEM_VALIDATION, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XInputNumberProps {\r\n align?: InputNumberProps['align']\r\n controls?: InputNumberProps['controls']\r\n disabled?: InputNumberProps['disabled']\r\n inputmode?: InputNumberProps['inputmode']\r\n max?: InputNumberProps['max']\r\n min?: InputNumberProps['min']\r\n placeholder?: InputNumberProps['placeholder']\r\n precision?: InputNumberProps['precision']\r\n size?: InputNumberProps['size']\r\n step?: InputNumberProps['step']\r\n stepStrictly?: InputNumberProps['stepStrictly']\r\n}\r\n\r\nconst { disabled = undefined } = defineProps<XInputNumberProps>()\r\n\r\nconst emit = defineEmits<{\r\n blur: [e: FocusEvent]\r\n focus: [e: FocusEvent]\r\n}>()\r\n\r\ndefineSlots<{\r\n prefix: () => VNode\r\n suffix: () => VNode\r\n}>()\r\n\r\nconst model = defineModel<number>()\r\n\r\nconst locale = inject(X_LOCALE_CONFIG)\r\nconst { t } = useLocale(locale)\r\n\r\nconst formItemValidation = inject(X_FORM_ITEM_VALIDATION, undefined)\r\nif (formItemValidation?.required) {\r\n const { label, validator } = formItemValidation\r\n formItemValidation.validator = () => {\r\n if (!model.value) {\r\n return `请输入${label}`\r\n }\r\n return validator?.()\r\n }\r\n}\r\n\r\nconst focus = (e: FocusEvent) => {\r\n emit('focus', e)\r\n}\r\n\r\nconst blur = (e: FocusEvent) => {\r\n emit('blur', e)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElInputNumber\r\n v-bind=\"{\r\n align,\r\n controls,\r\n disabled,\r\n inputmode,\r\n max,\r\n min,\r\n placeholder: placeholder ?? t('el.inputNumber.placeholder'),\r\n precision,\r\n size,\r\n step,\r\n stepStrictly,\r\n }\"\r\n v-model=\"model\"\r\n @blur=\"blur\"\r\n @focus=\"focus\"\r\n >\r\n <template\r\n v-if=\"'prefix' in $slots\"\r\n #prefix\r\n >\r\n <slot name=\"prefix\" />\r\n </template>\r\n <template\r\n v-if=\"'suffix' in $slots\"\r\n #suffix\r\n >\r\n <slot name=\"suffix\" />\r\n </template>\r\n </ElInputNumber>\r\n</template>\r\n","<script setup lang=\"tsx\">\r\nimport type { InputNumberProps } from 'element-plus'\r\nimport type { VNode } from 'vue'\r\nimport { ElInputNumber, useLocale } from 'element-plus'\r\nimport { inject } from 'vue'\r\n\r\nimport { X_FORM_ITEM_VALIDATION, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XInputNumberProps {\r\n align?: InputNumberProps['align']\r\n controls?: InputNumberProps['controls']\r\n disabled?: InputNumberProps['disabled']\r\n inputmode?: InputNumberProps['inputmode']\r\n max?: InputNumberProps['max']\r\n min?: InputNumberProps['min']\r\n placeholder?: InputNumberProps['placeholder']\r\n precision?: InputNumberProps['precision']\r\n size?: InputNumberProps['size']\r\n step?: InputNumberProps['step']\r\n stepStrictly?: InputNumberProps['stepStrictly']\r\n}\r\n\r\nconst { disabled = undefined } = defineProps<XInputNumberProps>()\r\n\r\nconst emit = defineEmits<{\r\n blur: [e: FocusEvent]\r\n focus: [e: FocusEvent]\r\n}>()\r\n\r\ndefineSlots<{\r\n prefix: () => VNode\r\n suffix: () => VNode\r\n}>()\r\n\r\nconst model = defineModel<number>()\r\n\r\nconst locale = inject(X_LOCALE_CONFIG)\r\nconst { t } = useLocale(locale)\r\n\r\nconst formItemValidation = inject(X_FORM_ITEM_VALIDATION, undefined)\r\nif (formItemValidation?.required) {\r\n const { label, validator } = formItemValidation\r\n formItemValidation.validator = () => {\r\n if (!model.value) {\r\n return `请输入${label}`\r\n }\r\n return validator?.()\r\n }\r\n}\r\n\r\nconst focus = (e: FocusEvent) => {\r\n emit('focus', e)\r\n}\r\n\r\nconst blur = (e: FocusEvent) => {\r\n emit('blur', e)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElInputNumber\r\n v-bind=\"{\r\n align,\r\n controls,\r\n disabled,\r\n inputmode,\r\n max,\r\n min,\r\n placeholder: placeholder ?? t('el.inputNumber.placeholder'),\r\n precision,\r\n size,\r\n step,\r\n stepStrictly,\r\n }\"\r\n v-model=\"model\"\r\n @blur=\"blur\"\r\n @focus=\"focus\"\r\n >\r\n <template\r\n v-if=\"'prefix' in $slots\"\r\n #prefix\r\n >\r\n <slot name=\"prefix\" />\r\n </template>\r\n <template\r\n v-if=\"'suffix' in $slots\"\r\n #suffix\r\n >\r\n <slot name=\"suffix\" />\r\n </template>\r\n </ElInputNumber>\r\n</template>\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;ECwBA,IAAM,IAAO,GAUP,IAAQ,EAAmB,GAAA,aAAE,EAG7B,EAAE,SAAM,EADC,EAAO,EAAgB,CACP,EAEzB,IAAqB,EAAO,GAAwB,KAAA,EAAU;AACpE,MAAI,GAAoB,UAAU;GAChC,IAAM,EAAE,UAAO,iBAAc;AAC7B,KAAmB,kBACZ,EAAM,QAGJ,KAAa,GAFX,MAAM;;EAMnB,IAAM,KAAS,MAAkB;AAC/B,KAAK,SAAS,EAAE;KAGZ,KAAQ,MAAkB;AAC9B,KAAK,QAAQ,EAAE;;yBAKf,EA8BgB,EAAA,EAAA,EA9BhB,EA8BgB;UA7BG,EAAA;aAAc,EAAA;aAAiB,EAAA;cAAiB,EAAA;QAAkB,EAAA;QAAY,EAAA;gBAAyB,EAAA,eAAe,EAAA,EAAC,CAAA,6BAAA;cAAuC,EAAA;SAAkB,EAAA;SAAa,EAAA;iBAAa,EAAA;;eAalN,EAAA;0CAAA,EAAK,QAAA;GACb,QAAM;GACN,SAAO;+BAGYA,EAAAA,SAAAA;SACjB;eAEqB,CAAtB,EAAsB,EAAA,QAAA,SAAA,CAAA,CAAA;;0BAGJA,EAAAA,SAAAA;SACjB;eAEqB,CAAtB,EAAsB,EAAA,QAAA,SAAA,CAAA,CAAA"}
@@ -1,2 +1,2 @@
1
- import { t as e } from "./InputNumber-CFTLdulD.js";
1
+ import { t as e } from "./InputNumber-hPI3X5v1.js";
2
2
  export { e as default };
@@ -0,0 +1,54 @@
1
+ import { l as e } from "./constants-C_Llxhb6.js";
2
+ import { ElConfigProvider as t, ElPagination as n, useLocale as r } from "element-plus";
3
+ import { createBlock as i, createVNode as a, defineComponent as o, inject as s, mergeModels as c, mergeProps as l, openBlock as u, renderSlot as d, unref as f, useModel as p, withCtx as m } from "vue";
4
+ //#endregion
5
+ //#region src/components/basic/Pagination.vue
6
+ var h = /* @__PURE__ */ o({
7
+ __name: "Pagination",
8
+ props: /* @__PURE__ */ c({
9
+ pageSizes: {},
10
+ background: { type: Boolean },
11
+ size: {},
12
+ layout: { default: "prev, pager, next, sizes, jumper, ->, total" },
13
+ total: {},
14
+ defaultPageSize: { default: 20 }
15
+ }, {
16
+ currentPage: {},
17
+ currentPageModifiers: {},
18
+ pageSize: {},
19
+ pageSizeModifiers: {}
20
+ }),
21
+ emits: /* @__PURE__ */ c(["sizeChange", "currentChange"], ["update:currentPage", "update:pageSize"]),
22
+ setup(o, { emit: c }) {
23
+ let h = c, g = p(o, "currentPage"), _ = p(o, "pageSize"), v = s(e);
24
+ return r(v), (e, r) => (u(), i(f(t), { locale: f(v) }, {
25
+ default: m(() => [a(f(n), l({
26
+ size: o.size,
27
+ total: o.total,
28
+ pageSizes: o.pageSizes,
29
+ background: o.background,
30
+ layout: o.layout
31
+ }, {
32
+ "current-page": g.value,
33
+ "onUpdate:currentPage": r[0] ||= (e) => g.value = e,
34
+ "page-size": _.value,
35
+ "onUpdate:pageSize": r[1] ||= (e) => _.value = e,
36
+ "default-page-size": o.defaultPageSize,
37
+ onSizeChange: r[2] ||= (e) => h("sizeChange", e),
38
+ onCurrentChange: r[3] ||= (e) => h("currentChange", e)
39
+ }), {
40
+ default: m(() => [d(e.$slots, "default")]),
41
+ _: 3
42
+ }, 16, [
43
+ "current-page",
44
+ "page-size",
45
+ "default-page-size"
46
+ ])]),
47
+ _: 3
48
+ }, 8, ["locale"]));
49
+ }
50
+ });
51
+ //#endregion
52
+ export { h as t };
53
+
54
+ //# sourceMappingURL=Pagination-9blNkPhL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pagination-9blNkPhL.js","names":[],"sources":["../../src/components/basic/Pagination.vue","../../src/components/basic/Pagination.vue"],"sourcesContent":["<script setup lang=\"tsx\">\r\nimport type { PaginationProps } from 'element-plus'\r\nimport { ElConfigProvider, ElPagination, useLocale } from 'element-plus'\r\n\r\nimport { inject } from 'vue'\r\nimport { X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XPaginationProps {\r\n pageSizes?: PaginationProps['pageSizes']\r\n background?: PaginationProps['background']\r\n size?: PaginationProps['size']\r\n layout?: PaginationProps['layout']\r\n total?: PaginationProps['total']\r\n defaultPageSize?: PaginationProps['defaultPageSize']\r\n}\r\n\r\nconst { defaultPageSize = 20, layout = 'prev, pager, next, sizes, jumper, ->, total' } = defineProps<XPaginationProps>()\r\n\r\nconst emit = defineEmits<{\r\n sizeChange: [size: number]\r\n currentChange: [current: number]\r\n}>()\r\nconst currentPage = defineModel<number>('currentPage')\r\nconst pageSize = defineModel<number>('pageSize')\r\n\r\nconst locale = inject(X_LOCALE_CONFIG)\r\nuseLocale(locale)\r\n</script>\r\n\r\n<template>\r\n <ElConfigProvider :locale=\"locale\">\r\n <ElPagination\r\n v-bind=\"{ size, total, pageSizes, background, layout }\"\r\n v-model:current-page=\"currentPage\"\r\n v-model:page-size=\"pageSize\"\r\n :default-page-size=\"defaultPageSize\"\r\n @size-change=\"emit('sizeChange', $event)\"\r\n @current-change=\"emit('currentChange', $event)\"\r\n >\r\n <slot />\r\n </ElPagination>\r\n </ElConfigProvider>\r\n</template>\r\n","<script setup lang=\"tsx\">\r\nimport type { PaginationProps } from 'element-plus'\r\nimport { ElConfigProvider, ElPagination, useLocale } from 'element-plus'\r\n\r\nimport { inject } from 'vue'\r\nimport { X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XPaginationProps {\r\n pageSizes?: PaginationProps['pageSizes']\r\n background?: PaginationProps['background']\r\n size?: PaginationProps['size']\r\n layout?: PaginationProps['layout']\r\n total?: PaginationProps['total']\r\n defaultPageSize?: PaginationProps['defaultPageSize']\r\n}\r\n\r\nconst { defaultPageSize = 20, layout = 'prev, pager, next, sizes, jumper, ->, total' } = defineProps<XPaginationProps>()\r\n\r\nconst emit = defineEmits<{\r\n sizeChange: [size: number]\r\n currentChange: [current: number]\r\n}>()\r\nconst currentPage = defineModel<number>('currentPage')\r\nconst pageSize = defineModel<number>('pageSize')\r\n\r\nconst locale = inject(X_LOCALE_CONFIG)\r\nuseLocale(locale)\r\n</script>\r\n\r\n<template>\r\n <ElConfigProvider :locale=\"locale\">\r\n <ElPagination\r\n v-bind=\"{ size, total, pageSizes, background, layout }\"\r\n v-model:current-page=\"currentPage\"\r\n v-model:page-size=\"pageSize\"\r\n :default-page-size=\"defaultPageSize\"\r\n @size-change=\"emit('sizeChange', $event)\"\r\n @current-change=\"emit('currentChange', $event)\"\r\n >\r\n <slot />\r\n </ElPagination>\r\n </ElConfigProvider>\r\n</template>\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;ECkBA,IAAM,IAAO,GAIP,IAAc,EAAmB,GAAC,cAAc,EAChD,IAAW,EAAmB,GAAC,WAAW,EAE1C,IAAS,EAAO,EAAgB;SACtC,EAAU,EAAO,kBAIf,EAWmB,EAAA,EAAA,EAAA,EAXA,QAAQ,EAAA,EAAA,EAAM,EAAA;oBAUhB,CATf,EASe,EAAA,EAAA,EATf,EASe;IAAA,MARH,EAAA;IAAI,OAAE,EAAA;IAAK,WAAE,EAAA;IAAS,YAAE,EAAA;IAAU,QAAE,EAAA;IAAM,EAAA;IAC5C,gBAAc,EAAA;4CAAA,EAAW,QAAA;IACzB,aAAW,EAAA;yCAAA,EAAQ,QAAA;IAC1B,qBAAmB,EAAA;IACnB,cAAW,AAAA,EAAA,QAAA,MAAE,EAAI,cAAe,EAAM;IACtC,iBAAc,AAAA,EAAA,QAAA,MAAE,EAAI,iBAAkB,EAAM;;qBAErC,CAAR,EAAQ,EAAA,QAAA,UAAA,CAAA,CAAA"}
@@ -1,2 +1,2 @@
1
- import { t as e } from "./Pagination-CGeelxQR.js";
1
+ import { t as e } from "./Pagination-9blNkPhL.js";
2
2
  export { e as default };
@@ -1,12 +1,12 @@
1
- import { c as e, o as t } from "./constants-TVJ7auaC.js";
2
- import { n } from "./dist-BPi3_vgC.js";
3
- import { Fragment as r, computed as i, createBlock as a, createElementBlock as o, createTextVNode as s, defineComponent as c, inject as l, mergeModels as u, mergeProps as d, openBlock as f, ref as p, renderList as m, toDisplayString as h, unref as g, useModel as _, watch as v, withCtx as y } from "vue";
4
- import { ElOption as b, ElSelect as x, useLocale as S } from "element-plus";
1
+ import { c as e } from "./dist-DQ3VOl3T.js";
2
+ import { l as t, s as n } from "./constants-C_Llxhb6.js";
3
+ import { ElOption as r, ElSelect as i, useLocale as a } from "element-plus";
4
+ import { Fragment as o, computed as s, createBlock as c, createElementBlock as l, createTextVNode as u, defineComponent as d, inject as f, mergeModels as p, mergeProps as m, openBlock as h, ref as g, renderList as _, toDisplayString as v, unref as y, useModel as b, watch as x, withCtx as S } from "vue";
5
5
  //#endregion
6
- //#region src/components/Select.vue
7
- var C = /* @__PURE__ */ c({
6
+ //#region src/components/basic/Select.vue
7
+ var C = /* @__PURE__ */ d({
8
8
  __name: "Select",
9
- props: /* @__PURE__ */ u({
9
+ props: /* @__PURE__ */ p({
10
10
  collapseTagsTooltip: { type: Boolean },
11
11
  defaultFirstOption: { type: Boolean },
12
12
  clearable: { type: Boolean },
@@ -32,25 +32,25 @@ var C = /* @__PURE__ */ c({
32
32
  modelValue: {},
33
33
  modelModifiers: {}
34
34
  }),
35
- emits: /* @__PURE__ */ u([
35
+ emits: /* @__PURE__ */ p([
36
36
  "blur",
37
37
  "change",
38
38
  "focus"
39
39
  ], ["update:modelValue"]),
40
- setup(c, { emit: u }) {
41
- let C = u, w = _(c, "modelValue"), { t: T } = S(l(e)), E = p([]), D = n(() => c.data ?? [], c.factory), O = i(() => [...n(E, c.factory).value, ...D.value]), k = (e) => {
40
+ setup(d, { emit: p }) {
41
+ let C = p, w = b(d, "modelValue"), { t: T } = a(f(t)), E = g([]), D = e(() => d.data ?? [], d.factory), O = s(() => [...e(E, d.factory).value, ...D.value]), k = (e) => {
42
42
  if (typeof e == "object") {
43
- if (c.identify) return c.identify(e);
43
+ if (d.identify) return d.identify(e);
44
44
  throw Error("`identify` is required when value's type extends `object` or `object[]`");
45
45
  } else return e;
46
46
  }, A = (e) => O.value.map((e) => e.value).find((t) => k(t) === e), j = 0;
47
- v([w, D], async () => {
47
+ x([w, D], async () => {
48
48
  if (j++, w.value) {
49
- let e = [...[], ...Array.isArray(w.value) ? w.value : [w.value]].filter((e) => !D.value.map((e) => k(e.value)).includes(k(e))), t = j, n = await c.supplement?.(e);
49
+ let e = [...[], ...Array.isArray(w.value) ? w.value : [w.value]].filter((e) => !D.value.map((e) => k(e.value)).includes(k(e))), t = j, n = await d.supplement?.(e);
50
50
  t === j && n && (E.value = n);
51
51
  } else E.value = [];
52
52
  }, { immediate: !0 });
53
- let M = i(() => O.value.map((e) => {
53
+ let M = s(() => O.value.map((e) => {
54
54
  let t = k(e.value);
55
55
  return {
56
56
  disabled: e.disabled,
@@ -58,44 +58,48 @@ var C = /* @__PURE__ */ c({
58
58
  label: e.label,
59
59
  value: t
60
60
  };
61
- })), N = i({
61
+ })), N = s({
62
62
  get: () => w.value && (Array.isArray(w.value) ? w.value.map(k) : k(w.value)),
63
63
  set: (e) => {
64
- Array.isArray(e) ? w.value = e.map((e) => A(e)) : w.value = e === void 0 ? void 0 : A(e) ?? (c.allowCreate ? e : void 0);
64
+ Array.isArray(e) ? w.value = e.map((e) => A(e)) : w.value = e === void 0 ? void 0 : A(e) ?? (d.allowCreate ? e : void 0);
65
65
  }
66
- }), P = l(t, void 0);
66
+ }), P = f(n, void 0);
67
67
  if (P?.required) {
68
68
  let { label: e, validator: t } = P;
69
69
  P.validator = () => !w.value || Array.isArray(w.value) && w.value.length === 0 ? `请选择${e}` : t?.();
70
70
  }
71
- return (e, t) => (f(), a(g(x), d({
72
- placeholder: c.placeholder ?? g(T)("el.select.placeholder"),
73
- noDataText: c.noDataText ?? g(T)("el.select.noDataText"),
74
- disabled: c.disabled,
75
- allowCreate: c.allowCreate,
76
- remote: c.remote,
77
- filterable: c.filterable || c.remote,
78
- clearable: c.clearable,
79
- remoteMethod: c.remoteMethod,
80
- multiple: c.multiple,
81
- loading: c.loading,
82
- size: c.size,
83
- collapseTags: c.collapseTags,
84
- collapseTagsTooltip: c.collapseTagsTooltip,
85
- defaultFirstOption: c.defaultFirstOption || c.allowCreate
71
+ let F = (e) => {
72
+ C("change", e), P?.validate?.();
73
+ };
74
+ return (e, t) => (h(), c(y(i), m({
75
+ placeholder: d.placeholder ?? y(T)("el.select.placeholder"),
76
+ noDataText: d.noDataText ?? y(T)("el.select.noDataText"),
77
+ disabled: d.disabled,
78
+ allowCreate: d.allowCreate,
79
+ remote: d.remote,
80
+ filterable: d.filterable || d.remote,
81
+ clearable: d.clearable,
82
+ remoteMethod: d.remoteMethod,
83
+ multiple: d.multiple,
84
+ loading: d.loading,
85
+ size: d.size,
86
+ collapseTags: d.collapseTags,
87
+ collapseTagsTooltip: d.collapseTagsTooltip,
88
+ defaultFirstOption: d.defaultFirstOption || d.allowCreate
86
89
  }, {
87
90
  modelValue: N.value,
88
91
  "onUpdate:modelValue": t[0] ||= (e) => N.value = e,
89
92
  onBlur: t[1] ||= (e) => C("blur", e),
90
- onChange: t[2] ||= (e) => C("change", e)
93
+ onFocus: t[2] ||= (e) => C("focus", e),
94
+ onChange: F
91
95
  }), {
92
- default: y(() => [(f(!0), o(r, null, m(M.value, (e) => (f(), a(g(b), {
96
+ default: S(() => [(h(!0), l(o, null, _(M.value, (e) => (h(), c(y(r), {
93
97
  key: e.key,
94
98
  label: e.label,
95
99
  value: e.value,
96
100
  disabled: e.disabled
97
101
  }, {
98
- default: y(() => [s(h(e.label), 1)]),
102
+ default: S(() => [u(v(e.label), 1)]),
99
103
  _: 2
100
104
  }, 1032, [
101
105
  "label",
@@ -109,4 +113,4 @@ var C = /* @__PURE__ */ c({
109
113
  //#endregion
110
114
  export { C as t };
111
115
 
112
- //# sourceMappingURL=Select-DNpw-ydO.js.map
116
+ //# sourceMappingURL=Select-BbNB6mtB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select-BbNB6mtB.js","names":[],"sources":["../../src/components/basic/Select.vue","../../src/components/basic/Select.vue"],"sourcesContent":["<script setup lang=\"tsx\" generic=\"D, V, MV extends V | V[]\">\r\nimport type { SelectProps } from 'element-plus'\r\nimport type { Ref } from 'vue'\r\n\r\nimport { useArrayMap } from '@vueuse/core'\r\nimport { ElOption, ElSelect, useLocale } from 'element-plus'\r\nimport { computed, inject, ref, watch } from 'vue'\r\n\r\nimport { X_FORM_ITEM_VALIDATION, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XSelectOptionProps<V> {\r\n disabled?: boolean\r\n label?: number | string\r\n value: V\r\n}\r\n\r\nexport interface XSelectProps<D, V> {\r\n collapseTagsTooltip?: SelectProps['collapseTagsTooltip']\r\n defaultFirstOption?: SelectProps['defaultFirstOption']\r\n clearable?: SelectProps['clearable']\r\n allowCreate?: SelectProps['allowCreate']\r\n collapseTags?: SelectProps['collapseTags']\r\n data?: D[]\r\n disabled?: SelectProps['disabled']\r\n factory: (option: D) => XSelectOptionProps<V>\r\n\r\n filterable?: SelectProps['filterable']\r\n identify?: (value: V) => number | string\r\n loading?: SelectProps['loading']\r\n multiple?: SelectProps['multiple']\r\n remote?: SelectProps['remote']\r\n\r\n remoteMethod?: (query: string) => void\r\n size?: SelectProps['size']\r\n\r\n supplement?: (lacks: V[]) => D[] | PromiseLike<D[]>\r\n placeholder?: SelectProps['placeholder']\r\n noDataText?: SelectProps['noDataText']\r\n}\r\n\r\nexport interface XSelectEvents<V> {\r\n blur: [e: FocusEvent]\r\n change: [value: V]\r\n focus: [e: FocusEvent]\r\n}\r\n\r\nconst {\r\n allowCreate,\r\n data,\r\n disabled = undefined,\r\n factory,\r\n identify,\r\n supplement\r\n} = defineProps<XSelectProps<D, V>>()\r\n\r\nconst emit = defineEmits<XSelectEvents<V>>()\r\n\r\nconst model = defineModel<MV>()\r\n\r\nconst locale = inject(X_LOCALE_CONFIG)\r\nconst { t } = useLocale(locale)\r\n\r\nconst supplements = ref([]) as Ref<D[]>\r\nconst init = useArrayMap(() => data ?? [], factory)\r\nconst options = computed(() => [...useArrayMap(supplements, factory).value, ...init.value])\r\n\r\nconst forward = (value: V) => {\r\n if (typeof value === 'object') {\r\n if (identify) {\r\n return identify(value)\r\n }\r\n else {\r\n throw new Error('`identify` is required when value\\'s type extends `object` or `object[]`')\r\n }\r\n }\r\n else {\r\n return value as number | string\r\n }\r\n}\r\nconst backward = (key: number | string) =>\r\n options.value.map(item => item.value).find(item => forward(item) === key)\r\n\r\nlet no = 0\r\nwatch(\r\n [model, init],\r\n async () => {\r\n no++\r\n if (model.value) {\r\n const lacks = [...[] as V[], ...Array.isArray(model.value) ? model.value : [model.value]]\r\n .filter(item => !init.value.map(it => forward(it.value)).includes(forward(item)))\r\n const _no = no\r\n const _data = await supplement?.(lacks)\r\n if (_no === no && _data) {\r\n supplements.value = _data\r\n }\r\n }\r\n else {\r\n supplements.value = []\r\n }\r\n },\r\n { immediate: true }\r\n)\r\n\r\nconst localOptions = computed(() =>\r\n options.value.map((item) => {\r\n const key = forward(item.value)\r\n return { disabled: item.disabled, key, label: item.label, value: key }\r\n })\r\n)\r\n\r\nconst localModel = computed({\r\n get: () =>\r\n model.value\r\n && (Array.isArray(model.value) ? model.value.map(forward) : forward(model.value as V)),\r\n set: (value) => {\r\n if (Array.isArray(value)) {\r\n model.value = value.map(item => backward(item)!) as MV\r\n }\r\n else {\r\n model.value\r\n = value === undefined\r\n ? undefined\r\n : ((backward(value) ?? (allowCreate ? value : undefined)) as MV)\r\n }\r\n }\r\n})\r\n\r\nconst formItemValidation = inject(X_FORM_ITEM_VALIDATION, undefined)\r\nif (formItemValidation?.required) {\r\n const { label, validator } = formItemValidation\r\n formItemValidation.validator = () => {\r\n if (!model.value || (Array.isArray(model.value) && model.value.length === 0)) {\r\n return `请选择${label}`\r\n }\r\n return validator?.()\r\n }\r\n}\r\n\r\nconst change = (value: V) => {\r\n emit('change', value)\r\n formItemValidation?.validate?.()\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElSelect\r\n v-bind=\"{\r\n placeholder: placeholder ?? t('el.select.placeholder'),\r\n noDataText: noDataText ?? t('el.select.noDataText'),\r\n disabled,\r\n allowCreate,\r\n remote,\r\n filterable: filterable || remote,\r\n clearable,\r\n remoteMethod,\r\n multiple,\r\n loading,\r\n size,\r\n collapseTags,\r\n collapseTagsTooltip,\r\n defaultFirstOption: defaultFirstOption || allowCreate,\r\n }\"\r\n v-model=\"localModel\"\r\n @blur=\"emit('blur', $event)\"\r\n @focus=\"emit('focus', $event)\"\r\n @change=\"change\"\r\n >\r\n <ElOption\r\n v-for=\"option of localOptions\"\r\n :key=\"option.key\"\r\n :label=\"option.label\"\r\n :value=\"option.value\"\r\n :disabled=\"option.disabled\"\r\n >\r\n {{ option.label }}\r\n </ElOption>\r\n </ElSelect>\r\n</template>\r\n","<script setup lang=\"tsx\" generic=\"D, V, MV extends V | V[]\">\r\nimport type { SelectProps } from 'element-plus'\r\nimport type { Ref } from 'vue'\r\n\r\nimport { useArrayMap } from '@vueuse/core'\r\nimport { ElOption, ElSelect, useLocale } from 'element-plus'\r\nimport { computed, inject, ref, watch } from 'vue'\r\n\r\nimport { X_FORM_ITEM_VALIDATION, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XSelectOptionProps<V> {\r\n disabled?: boolean\r\n label?: number | string\r\n value: V\r\n}\r\n\r\nexport interface XSelectProps<D, V> {\r\n collapseTagsTooltip?: SelectProps['collapseTagsTooltip']\r\n defaultFirstOption?: SelectProps['defaultFirstOption']\r\n clearable?: SelectProps['clearable']\r\n allowCreate?: SelectProps['allowCreate']\r\n collapseTags?: SelectProps['collapseTags']\r\n data?: D[]\r\n disabled?: SelectProps['disabled']\r\n factory: (option: D) => XSelectOptionProps<V>\r\n\r\n filterable?: SelectProps['filterable']\r\n identify?: (value: V) => number | string\r\n loading?: SelectProps['loading']\r\n multiple?: SelectProps['multiple']\r\n remote?: SelectProps['remote']\r\n\r\n remoteMethod?: (query: string) => void\r\n size?: SelectProps['size']\r\n\r\n supplement?: (lacks: V[]) => D[] | PromiseLike<D[]>\r\n placeholder?: SelectProps['placeholder']\r\n noDataText?: SelectProps['noDataText']\r\n}\r\n\r\nexport interface XSelectEvents<V> {\r\n blur: [e: FocusEvent]\r\n change: [value: V]\r\n focus: [e: FocusEvent]\r\n}\r\n\r\nconst {\r\n allowCreate,\r\n data,\r\n disabled = undefined,\r\n factory,\r\n identify,\r\n supplement\r\n} = defineProps<XSelectProps<D, V>>()\r\n\r\nconst emit = defineEmits<XSelectEvents<V>>()\r\n\r\nconst model = defineModel<MV>()\r\n\r\nconst locale = inject(X_LOCALE_CONFIG)\r\nconst { t } = useLocale(locale)\r\n\r\nconst supplements = ref([]) as Ref<D[]>\r\nconst init = useArrayMap(() => data ?? [], factory)\r\nconst options = computed(() => [...useArrayMap(supplements, factory).value, ...init.value])\r\n\r\nconst forward = (value: V) => {\r\n if (typeof value === 'object') {\r\n if (identify) {\r\n return identify(value)\r\n }\r\n else {\r\n throw new Error('`identify` is required when value\\'s type extends `object` or `object[]`')\r\n }\r\n }\r\n else {\r\n return value as number | string\r\n }\r\n}\r\nconst backward = (key: number | string) =>\r\n options.value.map(item => item.value).find(item => forward(item) === key)\r\n\r\nlet no = 0\r\nwatch(\r\n [model, init],\r\n async () => {\r\n no++\r\n if (model.value) {\r\n const lacks = [...[] as V[], ...Array.isArray(model.value) ? model.value : [model.value]]\r\n .filter(item => !init.value.map(it => forward(it.value)).includes(forward(item)))\r\n const _no = no\r\n const _data = await supplement?.(lacks)\r\n if (_no === no && _data) {\r\n supplements.value = _data\r\n }\r\n }\r\n else {\r\n supplements.value = []\r\n }\r\n },\r\n { immediate: true }\r\n)\r\n\r\nconst localOptions = computed(() =>\r\n options.value.map((item) => {\r\n const key = forward(item.value)\r\n return { disabled: item.disabled, key, label: item.label, value: key }\r\n })\r\n)\r\n\r\nconst localModel = computed({\r\n get: () =>\r\n model.value\r\n && (Array.isArray(model.value) ? model.value.map(forward) : forward(model.value as V)),\r\n set: (value) => {\r\n if (Array.isArray(value)) {\r\n model.value = value.map(item => backward(item)!) as MV\r\n }\r\n else {\r\n model.value\r\n = value === undefined\r\n ? undefined\r\n : ((backward(value) ?? (allowCreate ? value : undefined)) as MV)\r\n }\r\n }\r\n})\r\n\r\nconst formItemValidation = inject(X_FORM_ITEM_VALIDATION, undefined)\r\nif (formItemValidation?.required) {\r\n const { label, validator } = formItemValidation\r\n formItemValidation.validator = () => {\r\n if (!model.value || (Array.isArray(model.value) && model.value.length === 0)) {\r\n return `请选择${label}`\r\n }\r\n return validator?.()\r\n }\r\n}\r\n\r\nconst change = (value: V) => {\r\n emit('change', value)\r\n formItemValidation?.validate?.()\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElSelect\r\n v-bind=\"{\r\n placeholder: placeholder ?? t('el.select.placeholder'),\r\n noDataText: noDataText ?? t('el.select.noDataText'),\r\n disabled,\r\n allowCreate,\r\n remote,\r\n filterable: filterable || remote,\r\n clearable,\r\n remoteMethod,\r\n multiple,\r\n loading,\r\n size,\r\n collapseTags,\r\n collapseTagsTooltip,\r\n defaultFirstOption: defaultFirstOption || allowCreate,\r\n }\"\r\n v-model=\"localModel\"\r\n @blur=\"emit('blur', $event)\"\r\n @focus=\"emit('focus', $event)\"\r\n @change=\"change\"\r\n >\r\n <ElOption\r\n v-for=\"option of localOptions\"\r\n :key=\"option.key\"\r\n :label=\"option.label\"\r\n :value=\"option.value\"\r\n :disabled=\"option.disabled\"\r\n >\r\n {{ option.label }}\r\n </ElOption>\r\n </ElSelect>\r\n</template>\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ECuDA,IAAM,IAAO,GAEP,IAAQ,EAAe,GAAA,aAAE,EAGzB,EAAE,SAAM,EADC,EAAO,EAAgB,CACP,EAEzB,IAAc,EAAI,EAAE,CAAa,EACjC,IAAO,QAAkB,EAAA,QAAQ,EAAE,EAAE,EAAA,QAAQ,EAC7C,IAAU,QAAe,CAAC,GAAG,EAAY,GAAa,EAAA,QAAQ,CAAC,OAAO,GAAG,EAAK,MAAM,CAAC,EAErF,KAAW,MAAa;AAC5B,OAAI,OAAO,KAAU,UACnB;QAAI,EAAA,SACF,QAAO,EAAA,SAAS,EAAM;AAGtB,UAAU,MAAM,0EAA2E;SAI7F,QAAO;KAGL,KAAY,MAChB,EAAQ,MAAM,KAAI,MAAQ,EAAK,MAAM,CAAC,MAAK,MAAQ,EAAQ,EAAK,KAAK,EAAI,EAEvE,IAAK;AACT,IACE,CAAC,GAAO,EAAK,EACb,YAAY;AAEV,OADA,KACI,EAAM,OAAO;IACf,IAAM,IAAQ,CAAC,GAAG,EAAS,EAAE,GAAG,MAAM,QAAQ,EAAM,MAAM,GAAG,EAAM,QAAQ,CAAC,EAAM,MAAM,CAAC,CACtF,QAAO,MAAQ,CAAC,EAAK,MAAM,KAAI,MAAM,EAAQ,EAAG,MAAM,CAAC,CAAC,SAAS,EAAQ,EAAK,CAAC,CAAC,EAC7E,IAAM,GACN,IAAQ,MAAM,EAAA,aAAa,EAAM;AACvC,IAAI,MAAQ,KAAM,MAChB,EAAY,QAAQ;SAItB,GAAY,QAAQ,EAAE;KAG1B,EAAE,WAAW,IACf,CAAC;EAED,IAAM,IAAe,QACnB,EAAQ,MAAM,KAAK,MAAS;GAC1B,IAAM,IAAM,EAAQ,EAAK,MAAM;AAC/B,UAAO;IAAE,UAAU,EAAK;IAAU;IAAK,OAAO,EAAK;IAAO,OAAO;IAAK;IAE1E,CAAC,EAEK,IAAa,EAAS;GAC1B,WACE,EAAM,UACF,MAAM,QAAQ,EAAM,MAAM,GAAG,EAAM,MAAM,IAAI,EAAQ,GAAG,EAAQ,EAAM,MAAW;GACvF,MAAM,MAAU;AACd,IAAI,MAAM,QAAQ,EAAM,GACtB,EAAM,QAAQ,EAAM,KAAI,MAAQ,EAAS,EAAM,CAAO,GAGtD,EAAM,QACF,MAAU,KAAA,IACR,KAAA,IACE,EAAS,EAAM,KAAK,EAAA,cAAc,IAAQ,KAAA;;GAGvD,CAAC,EAEI,IAAqB,EAAO,GAAwB,KAAA,EAAU;AACpE,MAAI,GAAoB,UAAU;GAChC,IAAM,EAAE,UAAO,iBAAc;AAC7B,KAAmB,kBACb,CAAC,EAAM,SAAU,MAAM,QAAQ,EAAM,MAAM,IAAI,EAAM,MAAM,WAAW,IACjE,MAAM,MAER,KAAa;;EAIxB,IAAM,KAAU,MAAa;AAE3B,GADA,EAAK,UAAU,EAAM,EACrB,GAAoB,YAAY;;yBAKhC,EA+BW,EAAA,EAAA,EA/BX,EA+BW;gBA9BqB,EAAA,eAAe,EAAA,EAAC,CAAA,wBAAA;eAA8C,EAAA,cAAc,EAAA,EAAC,CAAA,uBAAA;aAAiC,EAAA;gBAAiB,EAAA;WAAoB,EAAA;eAA2B,EAAA,cAAc,EAAA;cAAe,EAAA;iBAAkB,EAAA;aAAqB,EAAA;YAAiB,EAAA;SAAgB,EAAA;iBAAa,EAAA;wBAAqB,EAAA;uBAAgD,EAAA,sBAAsB,EAAA;;eAgBhZ,EAAA;0CAAA,EAAU,QAAA;GAClB,QAAI,AAAA,EAAA,QAAA,MAAE,EAAI,QAAS,EAAM;GACzB,SAAK,AAAA,EAAA,QAAA,MAAE,EAAI,SAAU,EAAM;GAC3B,UAAQ;;oBAGuB,EAAA,EAAA,GAAA,EADhC,EAQW,GAAA,MAAA,EAPQ,EAAA,QAAV,YADT,EAQW,EAAA,EAAA,EAAA;IANR,KAAK,EAAO;IACZ,OAAO,EAAO;IACd,OAAO,EAAO;IACd,UAAU,EAAO;;qBAEA,CAAA,EAAA,EAAf,EAAO,MAAK,EAAA,EAAA,CAAA,CAAA"}
package/dist/es/Select.js CHANGED
@@ -1,2 +1,2 @@
1
- import { t as e } from "./Select-DNpw-ydO.js";
1
+ import { t as e } from "./Select-BbNB6mtB.js";
2
2
  export { e as default };
@@ -0,0 +1,34 @@
1
+ import { d as e, o as t } from "./constants-C_Llxhb6.js";
2
+ import { ElTabPane as n } from "element-plus";
3
+ import { createBlock as r, defineComponent as i, guardReactiveProps as a, normalizeProps as o, openBlock as s, provide as c, renderSlot as l, unref as u, withCtx as d } from "vue";
4
+ //#endregion
5
+ //#region src/components/basic/TabPane.vue
6
+ var f = /* @__PURE__ */ i({
7
+ __name: "TabPane",
8
+ props: {
9
+ closable: { type: Boolean },
10
+ disabled: { type: Boolean },
11
+ label: {},
12
+ lazy: { type: Boolean },
13
+ name: {}
14
+ },
15
+ setup(i, { expose: f }) {
16
+ return f({
17
+ label: i.label,
18
+ name: i.name
19
+ }), c(t, !0), c(e, i.name), (e, t) => (s(), r(u(n), o(a({
20
+ label: i.label,
21
+ name: i.name,
22
+ disabled: i.disabled,
23
+ closable: i.closable,
24
+ lazy: i.lazy
25
+ })), {
26
+ default: d(() => [l(e.$slots, "default")]),
27
+ _: 3
28
+ }, 16));
29
+ }
30
+ });
31
+ //#endregion
32
+ export { f as t };
33
+
34
+ //# sourceMappingURL=TabPane-8Kl4Y2vo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabPane-8Kl4Y2vo.js","names":[],"sources":["../../src/components/basic/TabPane.vue","../../src/components/basic/TabPane.vue"],"sourcesContent":["<script setup lang=\"tsx\">\r\nimport type { TabPaneProps } from 'element-plus'\r\nimport { ElTabPane } from 'element-plus'\r\nimport { provide } from 'vue'\r\nimport { X_ELEMENT_IN_TAB_PANE, X_TAB_PANE_NAME } from '@/constants'\r\n\r\nexport interface XTabPaneConfig {\r\n label?: string\r\n name?: number | string\r\n}\r\n\r\nexport interface XTabPaneProps {\r\n closable?: TabPaneProps['closable']\r\n disabled?: TabPaneProps['disabled']\r\n label?: TabPaneProps['label']\r\n lazy?: TabPaneProps['lazy']\r\n name?: TabPaneProps['name']\r\n}\r\n\r\nconst { label, name } = defineProps<XTabPaneProps>()\r\n\r\nconst pane = { label, name }\r\n\r\ndefineExpose({ ...pane })\r\n\r\nprovide(X_ELEMENT_IN_TAB_PANE, true)\r\nprovide(X_TAB_PANE_NAME, name)\r\n</script>\r\n\r\n<template>\r\n <ElTabPane\r\n v-bind=\"{ label, name, disabled, closable, lazy }\"\r\n >\r\n <slot />\r\n </ElTabPane>\r\n</template>\r\n","<script setup lang=\"tsx\">\r\nimport type { TabPaneProps } from 'element-plus'\r\nimport { ElTabPane } from 'element-plus'\r\nimport { provide } from 'vue'\r\nimport { X_ELEMENT_IN_TAB_PANE, X_TAB_PANE_NAME } from '@/constants'\r\n\r\nexport interface XTabPaneConfig {\r\n label?: string\r\n name?: number | string\r\n}\r\n\r\nexport interface XTabPaneProps {\r\n closable?: TabPaneProps['closable']\r\n disabled?: TabPaneProps['disabled']\r\n label?: TabPaneProps['label']\r\n lazy?: TabPaneProps['lazy']\r\n name?: TabPaneProps['name']\r\n}\r\n\r\nconst { label, name } = defineProps<XTabPaneProps>()\r\n\r\nconst pane = { label, name }\r\n\r\ndefineExpose({ ...pane })\r\n\r\nprovide(X_ELEMENT_IN_TAB_PANE, true)\r\nprovide(X_TAB_PANE_NAME, name)\r\n</script>\r\n\r\n<template>\r\n <ElTabPane\r\n v-bind=\"{ label, name, disabled, closable, lazy }\"\r\n >\r\n <slot />\r\n </ElTabPane>\r\n</template>\r\n"],"mappings":";;;;;;;;;;;;;;;SCuBA,EAAa;GAFE,OAAI,EAAA;GAAG,MAAG,EAAA;GAED,CAAC,EAEzB,EAAQ,GAAuB,GAAK,EACpC,EAAQ,GAAiB,EAAA,KAAK,kBAI5B,EAIY,EAAA,EAAA,EAAA,EAAA,EAAA;GAAA,OAHA,EAAA;GAAK,MAAE,EAAA;GAAI,UAAE,EAAA;GAAQ,UAAE,EAAA;GAAQ,MAAE,EAAA;GAAI,CAAA,CAAA,EAAA;oBAEvC,CAAR,EAAQ,EAAA,QAAA,UAAA,CAAA,CAAA"}
@@ -1,2 +1,2 @@
1
- import { t as e } from "./TabPane-CzInYf67.js";
1
+ import { t as e } from "./TabPane-8Kl4Y2vo.js";
2
2
  export { e as default };